
全面详细的常用Linux命令汇总(1)
无论是Linux的新手还是老手,掌握一些常用命令都是必不可少的,熟练使用它们可以大大提高工作效率,成为工作中的得力助手。本文是常用Linux命令汇总系列文章的第一篇,全面详细的展示了10个与文件管理相关的命令。
一览表
序号 | 命令 | 简述 | 分类 |
---|---|---|---|
1 | ls | 列出目录内容 | 文件管理 |
2 | cd | 切换目录 | 文件管理 |
3 | pwd | 显示当前工作目录的路径 | 文件管理 |
4 | mkdir | 创建新目录 | 文件管理 |
5 | cp | 复制文件或目录 | 文件管理 |
6 | mv | 移动或改名文件 | 文件管理 |
7 | touch | 创建空文件与修改时间戳 | 文件管理 |
8 | rm | 删除文件或目录 | 文件管理 |
9 | ln | 为文件创建快捷方式 | 文件管理 |
10 | cat | 显示文件内容 | 文件管理 |
1. ls命令
ls命令是英文list的缩写,用于列出指定目录的内容,能够显示文件名、文件类型、文件大小、最后修改时间等信息
语法格式
1 | ls [参数] [文件或目录名] |
常用参数
1 | ls -a 列出包括隐藏文件的所有文件 |
实例
(1)列出/bin目录下的文件
1 | ls /bin |
(2)按照修改时间列出所有文件的详细信息
1 | ls -Alt |
(3)结合通配符*使用,显示目录中以a开头的文件列表
1 | ls a* |
(4)查看当前目录中某一目录的权限
1 | ls -ld dir2 |
注意
- 对于
-a
和-A
参数,ls
命令是区分大小写的
2. cd命令
cd命令是英文change directory的缩写,用于更改当前所处的工作目录,路径可以是绝对路径,也可以是相对路径
语法格式
1 | cd 目录名 |
常用参数&实例
1 | cd /root/dir1/directory 切换到绝对路径 |
3. pwd命令
pwd命令是英文print working directory的缩写,用于显示当前工作目录的路径,一般不需要配合任何参数去使用
语法格式
1 | pwd |
实例
显示当前工作目录的路径
1 | pwd |
4. mkdir命令
mkdir命令是英文make directories的缩写,用于创建目录文件
语法格式
1 | mkdir [参数] 目录 |
常用参数
1 | mkdir -m 创建目录的同时设置权限 |
实例
(1)建立一个目录文件
1 | mkdir dir3 |
(2)创建一个新目录并赋予所有者完全权限(读、写、执行),组成员读权限和执行权限,其他用户只读权限
1 | mkdir -m 754 dir4 |
(3)一次性创建多个有嵌套关系的目录文件
1 | mkdir -p dir3/dir33/dir333 |
注意
- 使用
-p
参数时,如果目录已经存在,命令不会报错,而是继续执行 - 如果没有足够的权限或目录已存在,命令会失败
5. cp命令
cp命令是英文copy的缩写,用于复制文件或目录,将一个或多个文件或目录复制到指定位置
语法格式
1 | cp [参数] 源文件或目录 目标文件或目录 |
常用参数
1 | cp -a 通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容,功能等同dbR参数 |
实例
(1)复制源文件到指定目录,并定义新文件的名称
1 | cp file1 dir2/new_file |
(2)复制指定的源目录,并定义新目录的名称,显示执行过程详细信息
1 | cp -rv dir3 dir5 |
(3)复制指定文件时保留原始属性信息,并强制覆盖已有目录
1 | cp -af article.md dir4 |
注意
可以将一个文件通过复制来覆盖一个已有文件或者复制添加到一个目录中,但无法将一个目录通过复制来覆盖一个已有目录,如果使用cp -r 目录 已有目录
命令,会把目录复制添加到已有目录中
6. mv命令
mv命令是英文move的缩写,用于移动文件或目录,与cp复制命令不同,mv命令是剪切操作,只有文件位置发生了变化,而文件总个数并没有增加
语法格式
1 | mv [参数] 源文件或目录 目标文件或目录 |
常用参数
1 | mv -f 若目标文件已存在,则会直接覆盖,不会提示用户确认 |
实例
(1)移动源文件到指定目录,并定义新文件的名称
1 | mv file2 dir1/new_file |
(2)重命名当前目录下的文件或目录的名称
1 | mv file2 file3 |
注意
mv
命令会覆盖文件,为避免误删文件,可以使用-i
参数- 如果目标文件是一个目录,源文件会被移到此目录下,且文件名不变。如果目标文件不是目录,源文件名会变为目标文件名,并覆盖已存在的同名文件
7. touch命令
touch命令用于创建文件与修改文件或目录的时间属性,若文件存在则修改文件的访问时间和修改时间为当前时间,若文件不存在则创建一个新的空文件
语法格式
1 | touch [参数] 文件 |
常用参数
1 | touch -a 只修改文件的访问时间 |
实例
(1)创建出一个指定名称的空文件
1 | touch file4 |
(2)修改指定文件的修改时间
1 | touch -md "2024-03-04 05:06:07" file1 |
(3)使用通配符批量修改多个文件的访问时间,并确保不创建不存在的文件
1 | touch -ad "2024-03-04 05:06:07" file* |
注意
- 当使用
-d
或-t
参数时,确保提供的时间格式正确 - 如果提供的文件名包含特殊字符,可能需要用引号包围起来
8. rm命令
rm命令是英文remove的缩写,用于删除文件或目录,这是一个危险的命令,如rm -rf /*
会清空系统所有文件且无法恢复
语法格式
1 | rm [参数] 文件或目录 |
常用参数
1 | rm -d 仅删除无子文件的空目录 |
实例
(1)强制删除指定目录及其内的全部子文件
1 | rm -rf dir1 |
(2)删除当前目录下的所有文件及目录,并且每个文件删除前询问用户是否确认
1 | rm -ri * |
(3)删除系统的所有文件(不要尝试!!!)
1 | rm -rf /* |
注意
- 谨慎使用
rm
命令,一般情况下删除的文件或目录无法恢复
9. ln命令
ln命令是英文link的缩写,用于为某个文件在另外一个位置建立同步的链接(硬链接)。Linux系统中的链接文件有硬链接和软链接(符号链接)两种形式,软链接相当于Windows系统中的快捷方式文件,原始文件被移动或删除后软链接文件也将无法使用;硬链接则是将文件的inode属性块进行了复制,因此把原始文件移动或删除后硬链接文件依然可以使用
语法格式
1 | ln [参数] 源文件或目录 目标文件或目录 |
常用参数
1 | ln -d 允许超级用户尝试创建指向目录的硬链接 |
实例
(1)创建软链接
1 | ln -s file1 file2 |
(2)创建硬链接,当目标文件存在时询问是否覆盖
1 | ln -i file1 file2 |
注意
- 目录只能创建软链接
- 目录创建链接必须用绝对路径,使用相对路径创建会提示:符号连接的层数过多
10. cat命令
cat命令是英文concatenate的缩写,用于在终端设备上打印出文件内容,适合查看内容较少的纯文本文件,对于内容较多的文件查看后会在屏幕上快速滚屏看不清所显示的具体内容
语法格式
1 | cat [参数] 文件 |
常用参数
1 | cat -n 由1开始对所有输出的行数编号 |
实例
(1)查看指定文件的内容并显示行号
1 | cat -n file1 |
(2)把文件A的非空白行内容加上行号,之后将其附加到文件B中
1 | cat -b file2 >> file3 |
注意
cat
命令默认会一次显示整个文件,如果文件过大可能会导致终端卡顿cat
命令可以用来创建新的空文件,但不能编辑文件
- 感谢您的赞赏。