命令的提示符
[root@localhost: ~]#
-
[]
:这是提示符的分隔符号,没有特殊含义。 -
root
:显示的是当前的登录用户 -
@
:分隔符,没有特殊含义。 -
localhost
:当前系统的简写主机名(完整主机名是 localhost.localdomain)。 -
~
:代表用户当前所在的目录 -
:
:分隔符,没有特殊含义。 -
#
:命令提示符。超级用户是#,普通用户是$
命令的基本格式
[root@localhost: ~]# 命令 [选项] [参数]
-
选项
:是用于调整命令的功能的 -
参数
:是命令的操作对象 - 参数可以使用通配符(用于模糊搜索)
- 什么是通配符:
通配符是一种用于表示一类字符或字符串的特殊符号。通配符可以使字符串匹配操作更加高效、方便。通过使用通配符,我们可以在一大堆文本或数据中,快速地匹配到指定的信息或字符。日常生活中可能用处较少,但是在某些特定的场合下,它们会发挥非常重要的作用。比如,在编写批处理脚本、Linux Shell脚本等命令行程序时,通配符是必不可少的工具。 - 常用的通配符:
通配符 | 含义 |
* | 匹配任意个字符(包括0个) |
? | 代表任意一个字符 |
. | 匹配任意一个字符 |
[abc] | 匹配a、b、c中的任意一个 |
[!abc] | 匹配除了a、b、c中的任意一个 |
[a-f] | 匹配从a到f范围内的任意一个字符 |
[1-9] | 匹配从1到9范围内的任意一个字符 |
- 注意事项
- 通配符的语法: 不同的环境和编程语言可能有不同的通配符语法。在使用通配符之前,务必查阅相关文档,了解正确的语法和用法。
- 文件路径中的通配符: 在文件系统中,通配符通常用于匹配文件名。在使用通配符时,确保了解文件路径中的上下文,以免意外匹配到不希望操作的文件。
- 转义特殊字符: 一些字符可能具有特殊含义,如在正则表达式中的
.
、``等。如果要匹配它们的字面意义,可能需要使用转义字符(例如,在正则表达式中使用\
)。 - 大小写敏感性: 有些通配符匹配可能受到大小写敏感性的影响。在一些环境中,通配符可能区分大小写,而在其他环境中则可能不区分。确保你的模式与目标数据的大小写一致。
- 模糊匹配的风险: 使用通配符时,要注意可能的模糊匹配。例如,**``**通常匹配任意字符,包括空字符。确保你的模式不会导致不希望的匹配。
- 验证模式: 在使用通配符之前,可以通过测试和验证来确保模式的正确性。这可以通过编写测试代码、在终端中执行命令或使用相关工具进行验证。
- 文档参考: 始终参考相关的文档和资源,特别是关于所用语言、工具或操作系统的文档。这有助于理解通配符的细节和边界条件。
- 谨慎使用通配符删除操作: 在执行删除操作时要特别小心,确保你了解通配符将匹配的内容,并且不会意外删除重要文件。
ls命令
- 功能描述:显示指定目录下的内容(默认是当前目录)
- 常用选项(能连起来,-lh)
-
-a
: 显示所有文件**,包括隐藏文件** -l
: 长格式显示 配合-h一起使用 -lh-
-h
: 人性化显示,按照我们习惯的单位显示文件大小 -
-t
:按修改时间排序文件。 -
-r
:反向排序。
- 常用示例:
# 示例 1: 列出当前目录中的所有文件和子目录
ls
# 示例 2: 列出指定目录中的文件和子目录
ls /path/to/directory
# 示例 3: 以长格式显示文件详细信息
ls -l
# 示例 4: 显示所有文件,包括隐藏文件
ls -a
# 示例 5: 以易读的格式显示文件大小
ls -lh
# 示例 6: 按修改时间反向排序文件
ls -t -r
- 注意:
- 如果未提供目标目录路径,则默认使用当前工作目录。
- 需要适当的文件和目录权限来执行。
- 隐藏文件是以 . 开头的
- 人性化显示是指让-l显示信息的字节大小以KB或MB为单位
cd命令
- 功能描述:切换所在目录,不能对文件使用
- 常用选项:
-
-P
:使用物理路径,而非链接路径。 -
-L
:强制进入链接路径。
- 常用示例:
# 示例 1: 进入用户主目录
cd
# 示例 2: 使用绝对路径进入指定目录
cd /path/to/directory
# 示例 3: 使用相对路径进入指定目录
cd ../test # 进入上一级目录下的test目录
cd ./test # 进入当前目录下的test的目录
# 示例 4: 进入家目录
cd ~
# 示例 5: 进入上一次工作目录
cd -
# 示例 6: 使用选项
cd -P /path/to/symlink # 使用物理路径
cd -L /path/to/symlink # 强制进入链接路径
- 注意:
- 如果未提供目标目录路径,则
cd
- 当你使用相对路径时,它是相对于当前工作目录的。
- 相对路径与绝对路径
- 绝对路径:路径的写法“一定由根目录
/
写起”,例如:/home/linux/test
这个目录。 - 相对路径:路径的写法“不是由 / 写起”,如果要到
/home/linux/test
下面时,可以写成: “cd ../test
”。相对路径意指“相对于目前工作目录的路径!” - 相对路径有 相对当前目录
.
和 相对上一级目录..
pwd命令
- 功能描述:显示当前所在目录的绝对路径
- 常用选项:
无常用选项 - 常用示例:
# 示例 1: 直接在控制台输入显示
pwd
# 示例 2: 显示当前工作目录的路径
current_directory=$(pwd)
echo "当前工作目录:$current_directory"
# 示例 3: 在脚本中使用
script_directory=$(dirname "$0")
echo "脚本所在目录:$script_directory"
- 注意
-
pwd
- 可以在脚本中使用反引号 `` 或
$()
来捕获pwd
mkdir命令
- 功能描述:创建新的空目录
- 常用选项:
-p
: 递归建立目录-
--mode
:创建时指定权限
- 常用示例:
# 示例 1: 创建单级目录
mkdir my_directory
# 示例 2: 创建多级目录
mkdir -p path/to/my_directory
# 示例 3: 创建目录并设置权限
mkdir --mode=755 secure_directory
# 示例 4: 一下创建多个目录(不同于多级目录)
mkdir dir1 dir2 # 当前文件下创建
mkdir ../{dir1,dir2} # 上一个目录下创建(注意目录分割为逗号,且没有空格)
注意:
- 创建目录名不能与当前目录中的其他文件或目录重名,若重名则会报错
- 默认情况下,
mkdir
只能创建一级目录,如果要递归创建多级目录,使用p
- 创建目录时可以指定适当的权限,其默认权限是由umask设置,可以通过chmod修改
touch 命令
- 功能描述:
touch
命令用于创建空文件或更新文件的访问和修改时间。 - 常用选项:
-
-c
:如果文件不存在,则不创建新文件。 -
-t
:使用指定的时间戳,格式为[[CC]YY]MMDDhhmm[.ss]
。
- 常用示例:
# 示例 1: 创建空文件
touch new_file.txt
# 示例 2: 如果文件不存在,则不创建新文件
touch -c existing_file.txt
# 示例 3: 使用指定的时间戳创建文件
touch -t 202203091200.00 timestamped_file.txt
# 示例 4: 创建多个文件
touch 1.txt 2.txt # 当前文件下创建
touch ../{1.txt,2.txt} # 上一个目录下创建(注意文件分割为逗号,且没有空格)
- 使用时注意事项:
- 如果文件不存在,
touch
-
touch
rmdir命令(不推荐)
- 功能描述:删除空目录
- 选项:
-
-p
:递归删除目录及其上级空目录。
- 常用示例:
# 示例 1: 删除空目录
rmdir empty_directory
# 示例 2: 递归删除目录及其上级空目录
rmdir -p path/to/empty_directory
- 注意
-
rmdir
只能删除空目录,如果目录中包含文件或其他子目录,则需要使用rm
命令。 - 删除目录时需要适当的权限,权限不够就无法执行该命令(其实大部分命令权限不够时都无法执行)
rm 命令
- 功能描述:
rm
- 常用选项:
-
-r
:递归删除目录及其内容。 -
-f
:强制删除,不提示确认。 -
-i
:交互模式,删除前进行确认提示。
- 常用示例:
# 示例 1: 删除文件
rm filename.txt
# 示例 2: 递归删除目录及其内容
rm -r directory_name
# 示例 3: 强制删除文件,不提示确认
rm -f filename.txt
# 示例 4: 交互模式,删除前进行确认
rm -i filename.txt
# 示例 5: 移除多个文件
rm 1.txt 2.txt
- 注意事项:
- 谨慎使用
rm
- rm可以完全代替rmdir;删除目录时,通常需要使用
r
- 使用
f
cat 命令
- 功能描述:
cat
- 常用选项:
-
-n
:显示行号。 -
-b
:显示行号,但不对空行编号。 -
-A
:显示所有字符,包括控制字符和行尾符。
- 常用示例:
# 示例 1: 显示文件内容
cat filename.txt
# 示例 2: 显示文件内容并显示行号
cat -n filename.txt
# 示例 3: 连接多个文件的内容并显示
cat file1.txt file2.txt
# 示例 4: 将 cat 命令的输出重定向到文件
cat file1.txt > output.txt # 覆盖原文件内容
cat file1.txt >> output.txt # 追加到原文件内容之后
- 注意事项:
-
cat
- 可以使用
>
将cat
- 适合显示小文件内容,若文件过大,整个屏幕输出信息一闪而过,不适合查阅。