pwd命令 – 显示当前工作目录的路径
pwd命令来自英文词组print working directory的缩写,其功能是显示当前工作目录的路径,即显示所在位置的绝对路径。
pwd [选项]
cd命令 – 切换目录
cd命令来自英文词组change directory的缩写,其功能是更改当前所处的工作目录,路径可以是绝对路径,也可以是相对路径,若省略不写则会跳转至当前使用者的家目录。
cd [选项] [目录]
常见的选项:
选项 | 功能 |
---|---|
~ | 家目录 |
.. | 上级目录 |
- | 上次所在目录 |
ls命令 – 显示目录中文件及其属性信息
ls命令来自英文单词list的缩写,中文译为“列出”,其功能是显示目录中的文件及其属性信息。默认不添加任何参数的情况下,ls命令会列出当前工作目录中的文件信息。
ls [选项] [文件名]
常见的选项:
选项 | 功能 |
---|---|
-a | 显示所有文件 |
-A | 显示除当前目录和父级目录的所有文件 |
-d | 显示当前文件夹 |
-l | 显示文件的详细信息 |
-R | 递归显示所有子文件 |
-r | 逆序排序 |
-S | 按照文件大小排序,从大到小 |
-t | 按照文件修改时间排序,从新到旧 |
Linux文件的详细信息:
-
使用
ls -l
命令查看文件详细信息,下面是详细信息的各列含义:-
第一列:字符表示文件或目录的类型和权限。
-
第二列:文件的硬链接数,对于普通文件,这个数字通常是1。
-
第三列:文件的所有者用户名。
-
第四列:文件所属的用户组名。
-
第五列:文件的大小,单位是字节。对于目录,显示的是目录结构占用的空间大小,而不是目录内文件的总大小。
-
第六列:文件最后被修改的日期和时间。
-
第七列:文件的名称。
-
-
其中第一列的第一个字符表示文件的类型。
-
-:普通文件。
-
d:目录。
-
l:符号链接。
-
c:字符设备文件。
-
b:块设备文件。
-
s:套接字文件。
-
p:管道文件。
其余9个字符表示文件或目录的访问权限,每三个字符为一组,分别表示所有者的权限、所属组的权限、其他用户的权限。各个字符的权限含义如下:
-
r:读取权限。
-
w:写入权限。
-
x:执行权限。
-
-: 表示没有对应权限。
-
在Linux系统中,通配符被用于匹配文件名或路径名的一部分。下面是常见的一些通配符:
*
(星号):匹配任意数量的字符,包括零个字符。- 例子:
ls *.txt
会列出当前目录下所有以.txt
结尾的文件。
- 例子:
?
(问号):匹配任意单个字符。- 例子:
ls ?.txt
会列出当前目录下所有以单个字符开头且以.txt
结尾的文件。
- 例子:
[...]
(方括号):匹配方括号内的任意单个字符。- 例子:
ls [a-z].txt
会列出当前目录下所有以小写字母开头且以.txt
结尾的文件。
- 例子:
[^...]
(脱字符和方括号):匹配不在方括号内的任意单个字符。- 例子:
ls [^a-z].txt
会列出当前目录下所有不以小写字母开头且以.txt
结尾的文件。
- 例子:
{...}
(花括号):匹配花括号内的任意组合。- 例子:
ls file.{txt,pdf}
会列出当前目录下名为file.txt
和file.pdf
的文件。
- 例子:
alias命令 – 设置命令别名
alias命令来自英文单词alias,中文译为“别名”,其功能是设置命令别名信息。必须使用单引号将原来的命令引起来,防止特殊字符导致错误。并且alias命令的作用只局限于本次登录的操作,如果要每次登入都能使用这些命令别名,则可将相应的alias命令存放到bash的初始化文件当中。
alias 别名='命令'
通过命令设置别名是一次性的,重启后就会无效。要永久设置别名可以在/etc/.profile或用户家目录下的.bashrc里面。配置在系统文件中对所有用户都有效,设置在用户家目录下的文件,则只对该用户有效。
命令执行优先级:绝对路径>别名>内部命令>Hash缓存>外部命令
如果需要取消别名,则就可以使用unalias命令。
unalias 别名
du命令 – 查看文件或目录的大小
du命令来自英文词组disk usage的缩写,其功能是查看文件在文件系统中占用的逻辑空间,包括文件数据、元数据以及文件系统的块大小。文件系统的块大小是文件系统分配空间的最小单位。即使文件的实际数据大小小于这个块大小,文件系统也会为该文件分配一个完整的块,因此文件的逻辑大小可能会比物理大小大。
du [选项] [文件]
常见的选项:
选项 | 功能 |
---|---|
-a | 显示目录中所有文件大小 |
-d | 设置显示层级 |
-h | 使用易读格式显示文件大小 |
-s | 只统计文件总大小,不列出子文件大小 |
-X | 排除指定文件 |
mkdir命令 – 创建目录文件
mkdir命令来自英文词组make directories的缩写,其功能是创建目录文件。
mkdir [选项] 目录
常见的选项:
选项 | 功能 |
---|---|
-p | 递归创建多级目录 |
-m | 创建目录的同时设置权限 |
touch命令 – 创建空文件与修改时间戳
touch命令的功能是创建空文件与修改时间戳。如果文件不存在,则会创建一个空内容的文本文件;如果文件已经存在,则会对文件的访问时间和修改时间进行修改操作。
touch [选项] 文件
ln命令 – 为文件创建快捷方式
ln命令来自英文单词link的缩写,功能是为某个文件在另外一个位置建立同步的链接。Linux系统中的链接文件有两种形式,一种是硬链接,另一种是软链接。软链接相当于Windows系统中的快捷方式文件,原始文件被移动或删除后,软链接文件也将无法使用;硬链接则是将文件的inode属性块进行了复制,因此把原始文件移动或删除后,硬链接文件依然可以使用。
ln命令创建的链接默认为硬链接。
ln [选项] 源文件 目标文件
常见的选项:
选项 | 功能 |
---|---|
-s | 创建软链接 |
硬链接和软链接的区别:
硬链接 | 软链接 |
---|---|
本质是同一个文件 | 不是同一个文件 |
文件inode号相同 | inode号不同 |
链接数随着创建增加、删除减少 | 不影响链接数 |
不支持文件夹 | 支持文件夹 |
删除源文件,链接文件访问无影响 | 删除源文件,链接文件无法访问 |
文件类型和源文件相同 | 文件类型是链接文件 |
文件大小和源文件相同 | 文件大小是源文件的字符串长度 |
cp命令 – 复制文件或目录
cp命令来自英文单词copy的缩写,功能是复制文件或目录。cp命令能够将一个或多个文件或目录复制到指定位置,亦常用于文件的备份工作。
cp [选项] 源文件 目标文件
常见的选项:
选项 | 功能 |
---|---|
-a | 等同于-dpr选项,完整复制源文件 |
-f | 目标路径已存在会直接覆盖 |
-i | 目标路径已存在会询问是否覆盖 |
-p | 保留源文件的属性信息 |
-r | 递归复制,复制源文件及子文件 |
-u | 差异复制,源文件的修改时间比目标路径的修改时间新时复制 |
rm命令 – 删除文件或目录
rm命令来自英文单词remove的缩写,功能是删除文件或目录,一次可以删除多个文件,或递归删除目录及其内的所有子文件。
rm [选项] 文件
常见的选项:
选项 | 功能 |
---|---|
-f | 强制删除,不询问 |
-i | 删除前询问 |
-r | 递归删除 |
mv命令 – 移动或改名文件
mv命令来自英文单词move的缩写,功能是对文件进行剪切和重命名操作。
mv [选项] 源文件 目标文件
常见的选项:
选项 | 功能 |
---|---|
-f | 目标文件已存在,强制覆盖 |
-i | 目标文件已存在,询问是否覆盖 |
-n | 目标文件已存在,则不会进行操作 |
-v | 显示过程 |
which命令 – 查找命令文件
which命令的功能是查找命令文件,能够快速搜索二进制程序所对应的位置。
which [选项] 命令
whereis命令 – 显示命令及相关文件的路径位置
whereis命令的功能是显示命令及相关文件的路径位置信息,可用于找到命令(二进制程序)、命令源代码、man帮助手册等相关文件的路径位置信息,帮助我们更好地管理这些文件。
whereis [选项] 命令
locate命令 – 快速查找文件或目录
locate命令的功能是快速查找文件或目录。该命令是基于数据文件(/var/lib/locatedb)进行的定点查找,由于缩小了搜索范围,因此速度快很多。但是该数据文件的更新有着滞后性,所以要想让locate命令查询的结果更加准确,建议定期执行updatedb命令对数据库文件进行更新。
locate [选项] 文件
find命令 – 根据路径和条件搜索指定文件
find命令的功能是根据给定的路径和条件查找相关文件或目录,其参数灵活方便,且支持正则表达式,结合管道符后能够实现更加复杂的功能。find命令通常进行的是从根目录(/)开始的全盘搜索,有别于which、whereis、locate等有条件或部分文件的搜索。对于服务器负载较高的情况,建议不要在高峰时期使用find命令的模糊搜索,这会相对消耗较多的系统资源。
find 路径 选项 查找条件 [处理动作]
常见的选项:
选项 | 功能 |
---|---|
-name | 匹配文件名称 |
-size | 匹配文件大小 比如+10M表示大于10MiB的文件,-10M表示小于10MiB的文件,10M表示大小等于10MiB的文件 |
-user | 匹配文件用户 |
-type | 匹配文件类型 f:普通文件、d:目录文件、l:链接文件 |
-mtime | 匹配文件修改时间 |
-inum | 匹配文件inode |
常见的处理动作:
处理动作 | 功能 |
---|---|
打印匹配文件,默认处理动作 | |
-ls | 打印匹配文件详细列表 |
-delete | 删除匹配文件 |
-exec | -exec 命令 {} ; 对匹配文件执行特定命令,命令后面用{}指定匹配文件 |
-ok | 与-exec类似,对匹配文件执行特定命令,执行命令前会询问用户 |
tar命令 – 压缩和解压缩文件
tar命令的功能是压缩和解压缩文件,能够制作出Linux系统中常见的tar、tar.gz、tar.bz2等格式的压缩包文件。
tar [选项] 压缩包 文件
常见的选项:
选项 | 功能 |
---|---|
-c | 创建新的压缩 |
-C | 解压到指定目录 |
-f | 指定压缩包 |
-j | 使用bzip2压缩格式 |
-t | 显示压缩包内容 |
-v | 显示过程 |
-x | 解压 |
-z | 使用gzip压缩格式 |
gzip命令 – 压缩和解压文件
gzip命令来自英文单词gunzip的缩写,功能是压缩和解压文件。gzip是一个使用广泛的压缩命令,文件经过压缩后一般会以.gz后缀结尾,与tar命令合用后即为.tar.gz后缀。
gzip [选项] 文件
bzip2命令 – 压缩或解压缩.bz2文件
bzip2命令的功能是压缩或解压缩.bz2文件。
bzip2 [选项] 文件
zip命令 – 压缩文件
zip命令的功能是压缩文件,解压命令为unzip。通过zip命令可以将文件打包成zip格式的压缩包,里面包含文件的名称、路径、创建时间、上次修改时间等信息,与tar命令相似。
zip [选项] 压缩包 文件