Linux 常用命令与帮助文档使用指南
1. 帮助文档系统概述
Linux 提供了多种方式来获取命令的帮助信息,最常用的是 man 命令(manual page)。除了 man 命令,还有其他几种获取帮助的方式,如 --help 选项、info 命令等。
2. man 命令详解
基本语法
man [选项] 命令名
常用选项
-k:根据关键字搜索手册页-f:显示命令的简短描述-a:显示所有可用的手册页-M:指定手册页路径-P:指定分页程序-S:指定搜索的章节
手册页的章节分类
Linux 手册页分为多个章节,用数字表示:
- 用户命令:可由所有用户执行的命令
- 系统调用:内核提供的函数
- 库函数:C 标准库中的函数
- 设备文件:通常位于
/dev目录下的特殊文件 - 文件格式和约定:如
/etc/passwd的格式 - 游戏和屏保:娱乐程序
- 杂项:协议、文件系统等
- 系统管理命令:通常只能由 root 用户执行的命令
man 页面的结构
每个 man 页面通常包含以下部分:
- NAME:命令名称和简要描述
- SYNOPSIS:命令语法格式
- DESCRIPTION:命令功能详细描述
- OPTIONS:命令选项说明
- EXAMPLES:使用示例
- FILES:相关文件
- SEE ALSO:相关命令或文档
- BUGS:已知问题
- AUTHOR:作者信息
使用 man 命令的实例
# 查看 ls 命令的手册页
man ls
# 查看特定章节的手册页
man 5 passwd # 查看 passwd 文件格式的说明
# 搜索包含特定关键字的手册页
man -k network # 搜索与网络相关的命令
# 查看命令的简短描述
man -f ls # 等同于 whatis ls
在 man 页面中导航
在 man 页面查看器中,可以使用以下按键导航:
- 空格键:向下翻一页
- Enter 键:向下翻一行
- b 键:向上翻一页
- k 键:向上翻一行
- G 键:跳转到页面末尾
- 1G 或 g 键:跳转到页面开头
- / 键:向下搜索指定字符串
- ? 键:向上搜索指定字符串
- n 键:查找下一个匹配项
- N 键:查找上一个匹配项
- q 键:退出 man 页面
3. 其他帮助工具
–help 选项
大多数 Linux 命令都支持 --help 选项,用于显示简短的帮助信息:
ls --help
echo --help
info 命令
info 命令提供更详细的帮助信息,特别是对于 GNU 项目的程序:
info ls
info bash
apropos 命令
apropos 命令用于搜索与关键字相关的命令,等同于 man -k:
apropos file # 搜索与文件相关的命令
whatis 命令
whatis 命令用于显示命令的简短描述,等同于 man -f:
whatis grep
whatis awk
4. 系统信息命令
uname - 显示系统信息
功能:显示操作系统名称、版本等信息
语法:uname [选项]
常用选项:
-a:显示所有系统信息-s:显示操作系统名称-n:显示主机名-r:显示内核版本-m:显示机器硬件名称-p:显示处理器类型
示例:
uname -a # 显示所有系统信息
uname -r # 仅显示内核版本
hostname - 显示或设置主机名
功能:显示或设置系统的主机名
语法:hostname [选项] [主机名]
常用选项:
-I:显示所有网络接口的 IP 地址-f:显示完全限定域名 (FQDN)
示例:
hostname # 显示当前主机名
hostname -I # 显示 IP 地址
whoami - 显示当前用户名
功能:显示当前登录的用户名
语法:whoami
示例:
whoami
id - 显示用户和组信息
功能:显示当前用户的用户 ID、组 ID 以及所属的所有组
语法:id [选项] [用户名]
常用选项:
-u:仅显示用户 ID-g:仅显示主组 ID-G:显示所有组 ID-n:显示名称而不是 ID 号
示例:
id # 显示当前用户的所有信息
id -un # 显示当前用户名
uptime - 显示系统运行时间
功能:显示系统已运行的时间和负载情况
语法:uptime [选项]
示例:
uptime # 显示系统运行时间和平均负载
5. 文件和目录命令
ls - 列出目录内容
功能:列出目录中的文件和子目录
语法:ls [选项] [目录]
常用选项:
-l:长格式显示,包含详细信息-a:显示所有文件,包括隐藏文件(以 . 开头的文件)-h:以人类可读的格式显示文件大小-t:按修改时间排序-r:反向排序-S:按文件大小排序
示例:
ls -la # 以长格式显示所有文件
ls -lh # 以人类可读格式显示文件大小
ls -la /home # 列出 /home 目录的所有内容
cd - 切换目录
功能:更改当前工作目录
语法:cd [目录]
特殊目录:
~:用户主目录.:当前目录..:父目录-:上一个工作目录
示例:
cd /home/user # 切换到指定目录
cd ~ # 切换到主目录
cd .. # 切换到父目录
cd - # 切换到上一个目录
pwd - 显示当前目录
功能:显示当前工作目录的绝对路径
语法:pwd [选项]
常用选项:
-P:显示物理路径,不跟随符号链接
示例:
pwd # 显示当前目录路径
mkdir - 创建目录
功能:创建新目录
语法:mkdir [选项] 目录名
常用选项:
-p:递归创建目录,必要时创建父目录-m:设置创建目录的权限
示例:
mkdir newdir # 创建单个目录
mkdir -p dir1/dir2/dir3 # 递归创建多级目录
mkdir -m 755 public_html # 创建具有特定权限的目录
rmdir - 删除空目录
功能:删除空目录
语法:rmdir [选项] 目录名
常用选项:
-p:递归删除目录,同时删除父目录(如果为空)
示例:
rmdir emptydir # 删除空目录
rmdir -p dir1/dir2 # 递归删除空目录
touch - 创建文件或更新文件时间
功能:创建空文件或更新现有文件的访问和修改时间
语法:touch [选项] 文件名
常用选项:
-a:仅更新访问时间-m:仅更新修改时间-d:使用指定的日期时间
示例:
touch file.txt # 创建空文件或更新时间戳
touch -d "2023-01-01" oldfile.txt # 设置特定日期
cp - 复制文件和目录
功能:复制文件或目录
语法:cp [选项] 源文件 目标文件 或 cp [选项] 源文件... 目标目录
常用选项:
-r,-R:递归复制目录-i:交互式复制,覆盖前提示-p:保留文件属性(权限、时间戳等)-v:详细显示复制过程
示例:
cp file1.txt file2.txt # 复制文件
cp -r dir1 dir2 # 复制目录
cp -ip *.txt backup/ # 交互式复制并保留属性
mv - 移动或重命名文件和目录
功能:移动文件或目录,或重命名文件和目录
语法:mv [选项] 源文件 目标文件 或 mv [选项] 源文件... 目标目录
常用选项:
-i:交互式移动,覆盖前提示-v:详细显示移动过程
示例:
mv file1.txt file2.txt # 重命名文件
mv file.txt dir/ # 移动文件到目录
mv dir1 dir2 # 重命名或移动目录
rm - 删除文件和目录
功能:删除文件或目录
语法:rm [选项] 文件 或 rm [选项] 目录
常用选项:
-r,-R:递归删除目录及其内容-f:强制删除,不提示确认-i:交互式删除,删除前提示-v:详细显示删除过程
示例:
rm file.txt # 删除单个文件
rm -rf dir/ # 递归强制删除目录(危险操作)
rm -i *.tmp # 交互式删除多个文件
cat - 查看文件内容
功能:连接并显示文件内容
语法:cat [选项] 文件...
常用选项:
-n:显示行号-b:显示行号,但不包括空行-s:压缩连续的空行为一行
示例:
cat file.txt # 显示文件内容
cat -n file.txt # 显示行号
cat file1.txt file2.txt > combined.txt # 合并文件
less - 分页查看文件内容
功能:以分页方式查看文件内容,适用于大文件
语法:less [选项] 文件
常用选项:
-N:显示行号-S:不换行显示长行
导航键:与 man 页面相同,使用空格键、Enter 键、b 键等导航
示例:
less largefile.txt # 分页查看文件
head - 查看文件开头
功能:显示文件的前几行
语法:head [选项] 文件
常用选项:
-n:指定显示的行数,默认显示前 10 行
示例:
head file.txt # 显示前 10 行
head -n 20 file.txt # 显示前 20 行
tail - 查看文件结尾
功能:显示文件的最后几行
语法:tail [选项] 文件
常用选项:
-n:指定显示的行数,默认显示最后 10 行-f:实时显示文件新增内容,常用于日志监控
示例:
tail file.txt # 显示最后 10 行
tail -n 20 file.txt # 显示最后 20 行
tail -f /var/log/syslog # 实时监控日志文件
6. 文件内容搜索命令
grep - 搜索文件内容
功能:在文件中搜索指定的模式
语法:grep [选项] 模式 [文件...]
常用选项:
-i:忽略大小写-r:递归搜索目录-n:显示匹配行的行号-v:反向搜索,显示不匹配的行-c:只显示匹配的行数-A:显示匹配行及其后的 N 行-B:显示匹配行及其前的 N 行
示例:
grep "error" log.txt # 搜索包含 "error" 的行
grep -i "warning" *.log # 忽略大小写搜索多个文件
grep -r "function" /path/to/code/ # 递归搜索目录
grep -n "TODO" script.sh # 显示行号
find - 查找文件和目录
功能:在指定目录中查找文件和目录
语法:find [路径] [选项] [操作]
常用选项:
-name 模式:按名称查找-type 类型:按类型查找(f:文件, d:目录, l:链接)-size 大小:按大小查找-mtime 天数:按修改时间查找-user 用户名:按所有者查找
常用操作:
-exec 命令 {} \;:对匹配的文件执行命令-delete:删除匹配的文件
示例:
find /home -name "*.txt" # 查找所有 .txt 文件
find /var/log -type f -mtime -7 # 查找 7 天内修改的文件
find /tmp -size +10M # 查找大于 10MB 的文件
find /opt -name "*.bak" -delete # 删除所有 .bak 文件
find /etc -type f -exec ls -l {} \; # 对找到的文件执行 ls -l 命令
7. 文件权限和所有权命令
chmod - 更改文件权限
功能:更改文件或目录的访问权限
语法:chmod [选项] 模式 文件
权限表示方法:
- 数字表示法:
- 4:读取权限
- 2:写入权限
- 1:执行权限
- rwx = 7, rw- = 6, r-x = 5, r– = 4, -wx = 3, -w- = 2, –x = 1, — = 0
- 符号表示法:
- u:用户(所有者)
- g:组
- o:其他用户
- a:所有用户
- +:添加权限
- -:删除权限
- =:设置权限
常用选项:
-R:递归更改目录及其内容的权限
示例:
chmod 755 file.sh # 设置所有者可读写执行,组和其他用户可读执行
chmod u+x file.sh # 为所有者添加执行权限
chmod go-w file.txt # 移除组和其他用户的写入权限
chmod -R 700 dir/ # 递归设置目录权限
chown - 更改文件所有者
功能:更改文件或目录的所有者和/或组
语法:chown [选项] [所有者][:[组]] 文件
常用选项:
-R:递归更改目录及其内容的所有权
示例:
chown user file.txt # 更改文件所有者
chown user:group file.txt # 同时更改所有者和组
chown -R user:group dir/ # 递归更改目录所有权
chgrp - 更改文件组
功能:更改文件或目录的组所有权
语法:chgrp [选项] 组 文件
常用选项:
-R:递归更改目录及其内容的组所有权
示例:
chgrp group file.txt # 更改文件组
chgrp -R group dir/ # 递归更改目录组
8. 压缩和归档命令
tar - 归档和压缩工具
功能:创建、提取和管理归档文件
语法:tar [选项] [归档文件] [文件...]
常用选项:
-c:创建新归档-x:从归档中提取文件-v:详细显示处理的文件-f:指定归档文件-z:使用 gzip 压缩/解压缩-j:使用 bzip2 压缩/解压缩-J:使用 xz 压缩/解压缩-t:列出归档内容
示例:
tar -cvf archive.tar files/ # 创建归档
tar -czvf archive.tar.gz files/ # 创建 gzip 压缩归档
tar -xzvf archive.tar.gz # 提取 gzip 归档
tar -tf archive.tar # 列出归档内容
tar -xzvf archive.tar.gz -C /tmp # 提取到指定目录
zip - 创建 ZIP 压缩文件
功能:创建 ZIP 格式的压缩文件
语法:zip [选项] 压缩文件 文件...
常用选项:
-r:递归压缩目录-9:最大压缩率-q:静默模式,不显示输出
示例:
zip archive.zip file1.txt file2.txt # 压缩多个文件
zip -r archive.zip directory/ # 递归压缩目录
zip -9 archive.zip files/ # 最大压缩率
unzip - 提取 ZIP 文件
功能:提取 ZIP 格式的压缩文件
语法:unzip [选项] 压缩文件
常用选项:
-d:指定提取目录-l:列出压缩文件内容-q:静默模式
示例:
unzip archive.zip # 提取到当前目录
unzip archive.zip -d /tmp # 提取到指定目录
unzip -l archive.zip # 列出内容
9. 网络命令
ping - 测试网络连接
功能:向网络主机发送 ICMP 请求以测试连接
语法:ping [选项] 主机
常用选项:
-c:指定发送的数据包数量-i:指定数据包之间的间隔时间(秒)-t:设置 TTL 值(生存时间)
示例:
ping google.com # 持续 ping 测试
ping -c 4 8.8.8.8 # 发送 4 个数据包
ifconfig/ip - 网络接口配置
功能:显示或配置网络接口
语法:ifconfig [接口] [选项] 或 ip [选项] 命令
常用 ip 子命令:
addr:显示或管理 IP 地址link:显示或管理网络接口route:显示或管理路由表
示例:
ifconfig # 显示所有网络接口信息
ifconfig eth0 # 显示特定接口信息
ip addr show # 显示 IP 地址信息
ip link set eth0 up # 启用网络接口
ip route show # 显示路由表
netstat - 显示网络状态
功能:显示网络连接、路由表、接口统计等网络信息
语法:netstat [选项]
常用选项:
-a:显示所有连接和监听端口-t:显示 TCP 连接-u:显示 UDP 连接-l:仅显示监听端口-n:显示数字地址,不进行 DNS 解析-p:显示进程 ID 和程序名称
示例:
netstat -ant # 显示所有 TCP 连接的数字表示
netstat -tuln # 显示所有监听的 TCP 和 UDP 端口
netstat -rn # 显示路由表的数字表示
ssh - 安全远程连接
功能:使用 SSH 协议安全地连接到远程服务器
语法:ssh [选项] [用户@]主机 [命令]
常用选项:
-p:指定端口-i:指定私钥文件-X:启用 X11 转发-t:强制分配伪终端
示例:
ssh user@server.com # 连接到远程服务器
ssh -p 2222 user@server.com # 指定端口连接
ssh -i ~/.ssh/id_rsa user@server.com # 使用密钥文件连接
ssh user@server.com "ls -la" # 执行远程命令后退出
10. 系统管理命令
ps - 显示进程状态
功能:显示当前运行的进程
语法:ps [选项]
常用选项:
a:显示所有用户的进程u:以用户格式显示(用户名、CPU、内存等)x:显示没有控制终端的进程-e:显示所有进程-f:全格式显示-l:长格式显示
常用组合:
ps aux:显示所有进程的详细信息ps ef:显示所有进程及其父进程
示例:
ps aux # 显示所有进程的详细信息
ps -ef | grep firefox # 查找特定进程
top - 实时监控进程
功能:实时显示系统中运行的进程和系统资源使用情况
语法:top [选项]
常用选项:
-u:只显示特定用户的进程-p:只显示特定进程 ID 的进程-n:指定更新次数后退出
交互式命令:
k:终止指定进程r:更改进程优先级f:自定义显示字段M:按内存使用排序P:按 CPU 使用排序q:退出
示例:
top # 启动实时监控
top -u user # 监控特定用户的进程
top -n 1 # 更新一次后退出
kill - 终止进程
功能:向进程发送信号,通常用于终止进程
语法:kill [选项] 进程ID
常用信号:
1(HUP):挂起信号9(KILL):强制终止信号15(TERM):终止信号(默认)18(CONT):继续运行被暂停的进程19(STOP):暂停进程
示例:
kill 1234 # 发送默认终止信号给进程 1234
kill -9 1234 # 强制终止进程 1234
kill -1 1234 # 发送 HUP 信号
df - 显示磁盘空间使用情况
功能:显示文件系统的磁盘空间使用情况
语法:df [选项] [文件]
常用选项:
-h:以人类可读的格式显示(如 KB、MB、GB)-T:显示文件系统类型-i:显示 inode 使用情况
示例:
df -h # 显示所有文件系统的磁盘使用情况
df -h /home # 显示特定挂载点的磁盘使用情况
df -i # 显示 inode 使用情况
du - 显示目录或文件的磁盘使用量
功能:估算文件或目录的磁盘使用空间
语法:du [选项] [文件或目录]
常用选项:
-h:以人类可读的格式显示-s:仅显示总计-c:显示总计-a:显示每个文件的大小(不仅是目录)
示例:
du -h # 显示当前目录及其子目录的大小
du -sh /home/user # 显示特定目录的总大小
du -ach *.txt # 显示每个 txt 文件的大小和总计
free - 显示内存使用情况
功能:显示系统内存(RAM)和交换空间的使用情况
语法:free [选项]
常用选项:
-h:以人类可读的格式显示-m:以 MB 为单位显示-g:以 GB 为单位显示-s:持续显示内存使用情况,指定刷新间隔(秒)
示例:
free -h # 以人类可读格式显示内存使用情况
free -m # 以 MB 为单位显示
free -s 5 # 每 5 秒刷新一次显示
11. 文本处理命令
echo - 显示文本
功能:显示一行文本
语法:echo [选项] [字符串]
常用选项:
-e:启用转义字符解释-n:不输出尾随的换行符
转义字符:
\n:换行\t:制表符\r:回车\\:反斜杠
示例:
echo "Hello, World!"
echo -e "Line 1\nLine 2"
echo -n "No newline at end"
sort - 排序文本文件
功能:对文本文件的行进行排序
语法:sort [选项] [文件]
常用选项:
-n:按数值排序-r:反向排序-k:指定排序的字段-u:删除重复行-f:忽略大小写
示例:
sort file.txt # 按字母顺序排序
sort -nr numbers.txt # 按数值反向排序
sort -k2 -n data.txt # 按第二列数值排序
uniq - 删除重复行
功能:从排序文件中删除重复行
语法:uniq [选项] [文件]
常用选项:
-c:显示每行出现的次数-d:仅显示重复的行-u:仅显示不重复的行
示例:
sort file.txt | uniq # 排序后删除重复行
sort file.txt | uniq -c # 显示每行出现次数
sort file.txt | uniq -d # 仅显示重复行
wc - 字数统计
功能:计算文件的行数、字数和字节数
语法:wc [选项] [文件]
常用选项:
-l:只计行数-w:只计字数-c:只计字节数-m:只计字符数
示例:
wc file.txt # 显示行数、字数和字节数
wc -l file.txt # 只显示行数
wc -w *.txt # 显示所有 txt 文件的字数
cut - 提取文本列
功能:从文件的每一行中提取指定部分
语法:cut [选项] [文件]
常用选项:
-d:指定分隔符,默认为制表符-f:指定要提取的字段(列)-c:指定要提取的字符位置
示例:
cut -d"," -f1 data.csv # 提取 CSV 文件的第一列
cut -c1-10 file.txt # 提取每行的前 10 个字符
cut -d":" -f1,6 /etc/passwd # 提取用户名和主目录
12. 总结
本指南介绍了 Linux 系统中最常用的基本命令及其用法,以及如何使用 man 命令和其他帮助工具获取更详细的命令信息。掌握这些命令对于在 Linux 环境中高效工作至关重要。
学习 Linux 命令的最佳方法是多实践。记住,当你不确定某个命令的用法时,随时可以使用 man 命令名 或 命令名 --help 来获取帮助信息。
随着你对这些基本命令的熟悉,你可以开始探索更高级的命令组合和 Shell 脚本编写,以进一步提高你的 Linux 使用效率。
文档信息
- 本文作者:soveran zhong
- 本文链接:https://blog.clockwingsoar.cyou/2025/10/24/linux-commands-guide/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)