Linux 文件系统命令 API 文档
1. 概述
本 API 文档涵盖了常见的 Linux 文件系统命令,这些命令用于文件和目录的操作、文件内容查看、权限管理、文件系统挂载等操作。
2. 文件和目录操作
2.1 ls
- 列出目录内容
- 功能:列出指定目录中的文件和子目录。
- 语法:
ls [选项] [目录]
- 选项:
-l
:以长格式显示文件和目录信息,包括权限、所有者、大小、修改时间等。-a
:显示所有文件和目录,包括隐藏文件(以.
开头的文件)。-h
:与-l
一起使用时,以人类可读的格式显示文件大小(如 KB、MB 等)。-R
:递归列出指定目录及其子目录中的所有文件和目录。
- 示例:
ls
:列出当前目录中的文件和目录。ls -l
:以长格式显示当前目录中的文件和目录信息。ls -la /home/user
:以长格式显示/home/user
目录中的所有文件和目录信息。
2.2 mkdir
- 创建目录
- 功能:创建一个新的目录。
- 语法:
mkdir [选项] 目录名
- 选项:
-p
:如果父目录不存在,则创建父目录。
- 示例:
mkdir new_dir
:在当前目录下创建一个名为new_dir
的目录。mkdir -p parent_dir/child_dir
:如果parent_dir
不存在,则创建parent_dir
,并在其中创建child_dir
。
2.3 rm
- 删除文件或目录
- 功能:删除指定的文件或目录。
- 语法:
rm [选项] 文件或目录
- 选项:
-r
:递归删除目录及其所有子目录和文件。-f
:强制删除,不提示确认信息。
- 示例:
rm file.txt
:删除当前目录下的file.txt
文件。rm -r dir
:递归删除dir
目录及其所有内容。rm -rf dir
:强制递归删除dir
目录及其所有内容,不提示确认信息。
2.4 mv
- 移动或重命名文件或目录
- 功能:将文件或目录从一个位置移动到另一个位置,或者重命名文件或目录。
- 语法:
mv [选项] 源文件或目录 目标文件或目录
- 选项:
-i
:在覆盖目标文件之前提示确认信息。
- 示例:
mv file.txt new_dir/
:将file.txt
文件移动到new_dir
目录中。mv old_name.txt new_name.txt
:将old_name.txt
文件重命名为new_name.txt
。
2.5 cp
- 复制文件或目录
- 功能:复制文件或目录。
- 语法:
cp [选项] 源文件或目录 目标文件或目录
- 选项:
-r
:递归复制目录及其所有子目录和文件。-i
:在覆盖目标文件之前提示确认信息。
- 示例:
cp file.txt new_file.txt
:将file.txt
文件复制为new_file.txt
。cp -r dir new_dir
:递归复制dir
目录及其所有内容到new_dir
目录中。
3. 文件内容查看
3.1 cat
- 显示文件内容
- 功能:将文件的内容输出到标准输出。
- 语法:
cat [选项] 文件
- 选项:
-n
:显示行号。
- 示例:
cat file.txt
:显示file.txt
文件的内容。cat -n file.txt
:显示file.txt
文件的内容,并显示行号。
3.2 more
- 分页显示文件内容
- 功能:分页显示文件的内容,按空格键翻页。
- 语法:
more 文件
- 示例:
more large_file.txt
:分页显示large_file.txt
文件的内容。
3.3 less
- 分页显示文件内容
- 功能:分页显示文件的内容,支持向前和向后翻页,功能比
more
更强大。 - 语法:
less 文件
- 示例:
less big_file.txt
:分页显示big_file.txt
文件的内容。
3.4 head
- 显示文件开头的内容
- 功能:显示文件开头的指定行数,默认显示前 10 行。
- 语法:
head [选项] 文件
- 选项:
-n 行数
:指定显示的行数。
- 示例:
head file.txt
:显示file.txt
文件的前 10 行。head -n 5 file.txt
:显示file.txt
文件的前 5 行。
3.5 tail
- 显示文件末尾的内容
- 功能:显示文件末尾的指定行数,默认显示后 10 行。还可以实时跟踪文件的新增内容。
- 语法:
tail [选项] 文件
- 选项:
-n 行数
:指定显示的行数。-f
:实时跟踪文件的新增内容。
- 示例:
tail file.txt
:显示file.txt
文件的后 10 行。tail -n 5 file.txt
:显示file.txt
文件的后 5 行。tail -f log.txt
:实时跟踪log.txt
文件的新增内容。
4. 文件权限管理
4.1 chmod
- 修改文件或目录的权限
- 功能:修改文件或目录的权限,包括读(r)、写(w)、执行(x)权限。
- 语法:
chmod [选项] 权限模式 文件或目录
- 选项:
-R
:递归修改目录及其所有子目录和文件的权限。
- 权限模式:
- 数字模式:如
755
表示所有者具有读、写、执行权限,组用户和其他用户具有读、执行权限。 - 符号模式:如
u+x
表示给所有者添加执行权限。
- 数字模式:如
- 示例:
chmod 755 script.sh
:将script.sh
文件的权限设置为 755。chmod -R 777 dir
:递归将dir
目录及其所有内容的权限设置为 777。chmod u+x file.sh
:给file.sh
文件的所有者添加执行权限。
4.2 chown
- 修改文件或目录的所有者
- 功能:修改文件或目录的所有者。
- 语法:
chown [选项] 新所有者 文件或目录
- 选项:
-R
:递归修改目录及其所有子目录和文件的所有者。
- 示例:
chown new_user file.txt
:将file.txt
文件的所有者修改为new_user
。chown -R new_user dir
:递归将dir
目录及其所有内容的所有者修改为new_user
。
4.3 chgrp
- 修改文件或目录的所属组
- 功能:修改文件或目录的所属组。
- 语法:
chgrp [选项] 新组名 文件或目录
- 选项:
-R
:递归修改目录及其所有子目录和文件的所属组。
- 示例:
chgrp new_group file.txt
:将file.txt
文件的所属组修改为new_group
。chgrp -R new_group dir
:递归将dir
目录及其所有内容的所属组修改为new_group
。
5. 文件系统挂载与卸载
5.1 mount
- 挂载文件系统
- 功能:将文件系统挂载到指定的挂载点。
- 语法:
mount [选项] 设备名 挂载点
- 选项:
-t 文件系统类型
:指定要挂载的文件系统类型,如ext4
、ntfs
等。
- 示例:
mount /dev/sdb1 /mnt
:将/dev/sdb1
设备挂载到/mnt
目录。mount -t ntfs /dev/sdb1 /mnt
:将/dev/sdb1
设备的 NTFS 文件系统挂载到/mnt
目录。
5.2 umount
- 卸载文件系统
- 功能:卸载已挂载的文件系统。
- 语法:
umount [选项] 设备名或挂载点
- 示例:
umount /mnt
:卸载挂载在/mnt
目录的文件系统。umount /dev/sdb1
:卸载/dev/sdb1
设备上的文件系统。
6. 文件搜索
6.1 find
- 在目录中搜索文件
- 功能:在指定目录及其子目录中搜索符合条件的文件。
- 语法:
find [目录] [选项] [条件]
- 选项和条件:
-name 文件名
:按文件名搜索,支持通配符,如*.txt
。-type 文件类型
:按文件类型搜索,如f
表示普通文件,d
表示目录。-size 文件大小
:按文件大小搜索,如+10M
表示大于 10MB 的文件。
- 示例:
find /home -name "*.txt"
:在/home
目录及其子目录中搜索所有扩展名为.txt
的文件。find /var -type d
:在/var
目录及其子目录中搜索所有目录。find /tmp -size +10M
:在/tmp
目录及其子目录中搜索所有大于 10MB 的文件。
6.2 grep
- 在文件中搜索字符串
- 功能:在文件中搜索包含指定字符串的行。
- 语法:
grep [选项] 字符串 文件
- 选项:
-i
:忽略大小写。-r
:递归搜索目录及其子目录中的文件。
- 示例:
grep "error" log.txt
:在log.txt
文件中搜索包含error
的行。grep -i "warning" logs/
:递归在logs
目录及其子目录中的文件中搜索包含warning
的行,忽略大小写。
7. 文件系统检查与修复
7.1 fsck
- 检查并修复文件系统
- 功能:检查并修复文件系统的错误。
- 语法:
fsck [选项] 设备名
- 选项:
-y
:自动修复所有错误,不提示确认信息。
- 示例:
fsck -y /dev/sda1
:自动检查并修复/dev/sda1
设备上的文件系统错误。
7.2 xfs_repair
- 修复 XFS 文件系统
- 功能:专门用于修复 XFS 文件系统的错误。
- 语法:
xfs_repair [选项] 设备名
- 示例:
xfs_repair /dev/sdb2
:修复/dev/sdb2
设备上的 XFS 文件系统错误。
8. 磁盘使用情况查看
8.1 df
- 显示文件系统的磁盘使用情况
- 功能:显示文件系统的磁盘使用情况,包括总容量、已使用容量、可用容量等。
- 语法:
df [选项]
- 选项:
-h
:以人类可读的格式显示磁盘容量(如 KB、MB、GB 等)。
- 示例:
df -h
:以人类可读的格式显示所有文件系统的磁盘使用情况。
8.2 du
- 显示文件或目录的磁盘使用情况
- 功能:显示文件或目录的磁盘使用情况。
- 语法:
du [选项] 文件或目录
- 选项:
-h
:以人类可读的格式显示磁盘容量。-s
:只显示总计大小。
- 示例:
du -h dir
:以人类可读的格式显示dir
目录及其子目录的磁盘使用情况。du -sh dir
:以人类可读的格式显示dir
目录的总计磁盘使用情况。