Linux常用命令大全:系统管理必备命令手册
{% note info modern %} 📘 本文使用Butterfly主题特性优化阅读体验:
- 点击右上角标签图标切换章节
- 代码块支持一键复制
- 复杂示例使用折叠功能
- 命令行参数使用标签页分类 {% endnote %}
graph TD
A[Linux命令] --> B[软件管理]
A --> C[文件操作]
A --> D[系统监控]
A --> E[网络管理]
B --> F[包管理器]
B --> G[编译安装]
C --> H[压缩解压]
C --> I[文本处理]
软件包管理
{% tabs package-manager %}
# 更新软件源
sudo apt update
# 安装软件
sudo apt install package-name
# 卸载软件
sudo apt remove package-name # 保留配置文件
sudo apt purge package-name # 完全卸载
# 清理缓存
sudo apt autoremove # 删除无用依赖
sudo apt clean # 清理下载缓存
# 安装rpm包
sudo rpm -ivh package.rpm
# 查询已安装
rpm -qa | grep -i package-name
# 完全卸载
sudo rpm -e package-name
# 验证签名
rpm --checksig package.rpm
# 通用编译流程
tar -xvf source.tar.gz
cd source-directory
./configure --prefix=/opt/custom
make -j$(nproc)
sudo make install
# 不同压缩格式解压命令
tar -xvf file.tar # .tar
tar -zxvf file.tar.gz # .tar.gz
tar -jxvf file.tar.bz2 # .tar.bz2
# 列出已安装
snap list
# 安装应用
sudo snap install package-name --classic
# 更新应用
sudo snap refresh package-name
# 完全卸载
sudo snap remove package-name
{% endtabs %}
文件操作
压缩解压
{% tabs compression %}
# 创建tar包
tar -cvf archive.tar dir/
# 创建gz压缩包
tar -czvf archive.tar.gz dir/
# 创建bz2压缩包
tar -cjvf archive.tar.bz2 dir/
# 解压到当前目录
tar -xvf archive.tar
# 解压到指定目录
tar -xvf archive.tar -C /target/path
# 列出压缩内容
tar -tf archive.tar.gz
{% endtabs %}
文本处理
{% codeblock "grep高级用法" lang:bash %}
查找Java异常日志
grep -n 'Exception' app.log --color=auto
排除注释行
grep -v '^#' config.ini
递归搜索代码
grep -r 'main(' src/ --include='*.java' {% endcodeblock %}
awk数据处理示例
# 统计nginx访问IP
awk '{print $1}' access.log | sort | uniq -c | sort -nr
# 计算CSV文件第二列总和
awk -F',' '{sum+=$2} END{print sum}' data.csv
# 格式化输出进程信息
ps aux | awk '{printf "%-10s %5s %s\n",$1,$2,$11}'
系统监控
{% tabs monitoring %}
# 实时进程监控
top -u www-data
# 查找Java进程
ps aux | grep '[j]ava'
# 结束进程树
pkill -9 -P parent_pid
# 内存使用排行
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
# 磁盘空间分析
du -sh * | sort -hr
df -hT /var
{% endtabs %}
网络管理
{% tabs networking %}
# 开放HTTP端口
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
# 查看开放端口
sudo firewall-cmd --list-all
# 追踪路由路径
mtr -rw google.com
# 测试端口连通性
nc -zv 192.168.1.100 22
# 抓取HTTP请求
tcpdump -i eth0 -A port 80 | grep 'GET'
{% endtabs %}
进阶应用
日志分析
# 实时监控日志更新
tail -f /var/log/syslog | grep --line-buffered 'ERROR'
# 分析访问量前10的IP
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head -10
# 提取特定时间段日志
sed -n '/23\/Feb\/2025:20:00:00/,/23\/Feb\/2025:21:00:00/p' access.log
批量操作
# 批量重命名文件
rename 's/\.jpeg$/\.jpg/' *.jpeg
# 批量转换图片尺寸
mogrify -resize 800x600 *.jpg
# 并行处理文件
find . -name '*.log' | parallel gzip {}
完整命令参考
点击查看完整命令列表
系统维护
# 自动清理缓存
sudo apt autoremove
# 检查系统更新
sudo apt update && sudo apt upgrade -y
# 查看内核版本
uname -r
文件管理
# 查找大文件
find / -type f -size +100M -exec ls -lh {} \;
# 校验文件完整性
md5sum important-file
# 实时同步目录
rsync -avz --progress source/ destination/
网络工具
# 查看开放端口
netstat -tulpn
# 测试下载速度
wget -O /dev/null http://speedtest.tele2.net/10GB.zip
# 查看路由表
route -n
{% note success modern %} ✅ 最佳实践建议:
- 使用
man command查看命令手册 - 复杂操作先使用
--dry-run参数测试 - 生产环境操作前做好备份
- 使用版本控制系统管理重要配置文件
- 定期检查系统日志(/var/log/) {% endnote %}
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 炸薯条的博客
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果