Welcome

首页 / 操作系统 / Linux / Linux操作系统常用命令及示例说明

一、文件和目录操作
1. ls - 列出目录内容
参数:

-l:详细信息(权限、所有者、大小)
-a:显示隐藏文件(以.开头)
-h:人类可读的文件大小(如 1K、2M)
-t:按修改时间排序
-r:反向排序
示例:

ls -l /home
# 输出示例:
# drwxr-xr-x 2 user user 4096 Mar 10 09:00 Documents
# -rw-r--r-- 1 user user 1024 Mar 10 08:00 file.txt

ls -alth /var/log
# 显示/var/log目录下的所有文件(含隐藏文件),按时间倒序排列
2. cp - 复制文件/目录
参数:

-r:递归复制目录
-i:覆盖前提示确认
-p:保留文件属性(权限、时间戳)
-v:显示复制过程
示例:

cp -ivp file.txt backup/file.txt
# 输出:'file.txt' -> 'backup/file.txt'(若文件存在会提示覆盖)

cp -r /etc/nginx /backup/
# 递归复制/etc/nginx目录到/backup/
3. grep - 文本搜索工具
参数:

-i:忽略大小写
-r:递归搜索目录
-n:显示匹配行的行号
-v:反向匹配(排除符合模式的行)
示例:

grep -rin "error" /var/log/syslog
# 输出示例:
# /var/log/syslog:45:Mar 10 10:00:00 systemd[1]: Error starting service

grep -v "#" /etc/nginx/nginx.conf
# 显示配置文件中所有非注释行
二、系统监控与管理
4. top - 实时系统监控
交互命令:

P:按CPU使用率排序
M:按内存使用率排序
k:终止指定PID的进程
q:退出
示例:

top -u nginx
# 输出示例:
# PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
# 1234 nginx     20   0   256M    50M    10M S 2.3  1.2   0:00.05 nginx
5. df / du - 磁盘空间工具
df 参数:

-h:人类可读格式
-T:显示文件系统类型
示例:

df -hT
# 输出示例:
# Filesystem     Type      Size  Used Avail Use% Mounted on
# /dev/sda1      ext4       20G   12G  7.2G  63% /

du -sh /var/log/*
# 输出示例:
# 4.0K    /var/log/alternatives.log
# 12M     /var/log/syslog
三、权限管理
6. chmod - 修改文件权限
符号模式:

u(所有者)、g(所属组)、o(其他人)
+ 添加权限,- 移除权限
示例:

chmod u+x script.sh
# 解释:给所有者添加执行权限
# 结果:-rwxr--r-- 1 user user 0 Mar 10 10:00 script.sh

chmod -R 755 /var/www/html
# 递归设置目录权限为rwxr-xr-x
四、网络工具
7. netstat - 网络连接查看
参数:

-t:TCP协议
-u:UDP协议
-l:监听中的连接
-n:显示数字地址(不解析域名)
示例:

netstat -tuln
# 输出示例:
# Proto Recv-Q Send-Q Local Address  Foreign Address  State
# tcp        0      0 0.0.0.0:22    0.0.0.0:*        LISTEN
8. curl - 网络请求工具
参数:

-o:保存输出到文件
-I:仅显示响应头
-X:指定HTTP方法(如 GET/POST)
示例:

curl -I https://www.example.com
# 输出示例:
# HTTP/2 200
# Server: nginx
# Date: Mon, 10 Mar 2023 10:00:00 GMT

curl -o image.jpg https://example.com/image.jpg
# 下载文件并保存为image.jpg
五、压缩与归档
9. tar - 文件打包
参数:

-c:创建归档文件
-x:解压归档文件
-z:使用gzip压缩(.tar.gz)
-j:使用bzip2压缩(.tar.bz2)
-v:显示详细过程
示例:

tar -czvf logs.tar.gz /var/log/*
# 输出:
# /var/log/syslog
# /var/log/auth.log
# 生成logs.tar.gz文件

tar -xzvf logs.tar.gz -C /tmp
# 解压到/tmp目录
六、进程管理
10. kill - 终止进程
信号类型:

SIGTERM(15):正常终止(默认)
SIGKILL(9):强制终止
示例:

kill 1234          # 发送SIGTERM终止PID 1234
kill -9 1234       # 强制终止(进程无法清理资源)
pkill -f "nginx"   # 终止所有包含"nginx"的进程
七、文件查找
11. find - 高级文件搜索
参数:

-name:按文件名匹配
-size:按文件大小(如 +10M 表示大于10MB)
-exec:对搜索结果执行命令
示例:

find /home -name "*.txt" -size +1M -exec rm -v {} \;
# 查找/home下所有大于1MB的.txt文件并删除,显示删除过程
八、文本处理
12. sed - 流编辑器
常用操作:

s:替换文本
d:删除行
p:打印行
示例:

sed 's/foo/bar/g' input.txt > output.txt
# 将input.txt中所有foo替换为bar,保存到output.txt

sed -i.bak '/^#/d' config.conf
# 删除config.conf中所有以#开头的行,并备份原文件为config.conf.bak
以上命令覆盖了 文件操作、系统监控、权限管理、网络工具 等核心场景。实际使用时,可通过 man <命令> 或 <命令> --help 查询更详细的参数说明。