以下是2025年仍保持核心地位的Linux常用命令及用法详解,涵盖系统管理、文件操作、网络工具等关键场景,并附注新兴工具趋势:
ls
- 列出目录内容
ls -lht # 按修改时间倒序+人类可读大小显示
ls --color=auto # 彩色输出(区分文件类型)
ls -R /path # 递归列出子目录
cp/mv/rm
- 复制/移动/删除
cp -a src dst # 归档模式(保留权限属性)
mv -i file* ~/backup/ # 交互式覆盖提示
rm -rf dir/ # ⚠️强制递归删除(慎用)
find
- 高级文件搜索
find /var/log -name "*.log" -mtime -7 -exec gzip {} \; # 压缩7天内日志
find . -type f -size +100M # 查找大于100MB文件
rsync
- 增量同步(替代scp
)
rsync -avz --progress src/ user@remote:/dst/ # 压缩+进度条
grep
- 文本搜索
grep -Ei "error|fail" /var/log/syslog # 忽略大小写+正则
grep -r "pattern" /path/ # 递归搜索目录
awk
- 数据提取
awk '{print $1,$3}' access.log # 打印第1&3列
awk -F: '{print $1}' /etc/passwd # 以冒号分隔
sed
- 流编辑器
sed -i 's/old/new/g' file.txt # 全局替换
sed -n '10,20p' file # 打印10-20行
jq
- JSON处理(2025必备)
curl API_URL | jq '.data[].id' # 提取JSON字段
htop
- 交互式进程查看(替代top
)
htop -u www-data # 过滤用户进程
nmon
- 全系统资源监控
nmon -f -s 10 -c 60 # 记录到CSV(10秒间隔,60次)
journalctl
- 日志查询(Systemd系统)
journalctl -u nginx --since "1 hour ago" # 服务日志
journalctl -p err -b # 本次启动的错误日志
ss
- 网络连接分析(替代netstat
)
ss -tulnp # 监听端口+进程名
curl
- 网络请求
curl -x socks5://proxy:8080 https://example.com
curl -o file.tar.gz URL # 下载文件
mtr
- 网络诊断(ping+traceroute
)
mtr -4 -w 8.8.8.8 # IPv4+持续监测
chmod/chown
chmod -R 750 /webroot # 递归设置权限
chown -R user:group dir # 递归修改属主
sudo
- 提权执行
sudo -u postgres psql # 指定用户运行
传统工具
apt install -y nginx # Debian系
dnf groupinstall "Development Tools" # RHEL9+
容器化工具
podman run -d --name app nginx:alpine # 替代docker
flatpak install flathub org.gimp.GIMP # 沙盒应用
eza
- ls
现代替代(彩色+图标)
eza --tree --level=2 # 树状展示
dust
- 磁盘占用分析
dust -d 3 /var # 交互式目录大小
zellij
- 终端多路复用器(替代tmux
)
zellij attach --index 0 # 连接会话
组合命令
cat access.log | grep 404 | awk '{print $7}' | sort | uniq -c | sort -nr
安全操作
rm --preserve-root -rf / # 防止误删根目录
学习资源
tldr tar # 查看简化版命令手册
掌握这些命令可应对90%的Linux运维场景。2025年重点关注与云原生(Kubernetes、Wasm)和AIOps工具的集成,如kubectl
和promtool
。