以下是一份Linux常用命令和技巧的整理,涵盖文件操作、系统管理、网络工具、文本处理等场景,并附实用技巧说明:
基础命令
ls -alh
:显示所有文件(含隐藏文件),带权限、大小(人类可读格式)cd -
:快速返回上一个目录pwd
:显示当前绝对路径mkdir -p dir1/dir2
:递归创建多级目录rm -rf dir/
:强制删除目录(慎用!)cp -a src dst
:保留属性递归复制(适合备份)查找文件
find /path -name "*.log" -mtime +7
:查找7天前修改的.log文件locate filename
:快速搜索(需先运行updatedb
更新数据库)whereis/which command
:查找命令路径查看与编辑
cat -n file
:显示行号查看文件less +F file.log
:实时追踪日志(类似tail -f
但可翻页)vim +/pattern file
:打开文件并跳转到匹配行文本分析
grep -Ei "error|warning" logfile
:忽略大小写搜索多个关键词awk '{print $1,$4}' file
:提取指定列(默认空格分隔)sed -i 's/old/new/g' file
:直接替换文件内容(原地修改)排序与去重
sort -u file
:排序并去重uniq -c
:统计重复行次数(需先排序)进程管理
ps aux --sort=-%mem
:按内存使用排序进程top -p pid1,pid2
:监控指定进程kill -9 $(pgrep process)
:强制终止指定名称的进程资源监控
free -h
:查看内存(人类可读格式)df -Th
:显示磁盘使用及文件系统类型du -sh * | sort -h
:统计当前目录大小并排序系统信息
uname -a
:内核版本信息lscpu
:CPU详细信息lsblk
:块设备列表(磁盘分区)连接与测试
ping -c 4 example.com
:限制ping次数curl -I http://example.com
:仅获取HTTP头wget --mirror -p http://site.com
:镜像下载网站端口与路由
ss -tulnp
:查看监听端口(替代netstat
)traceroute -T example.com
:TCP方式跟踪路由mtr example.com
:实时路由诊断(结合ping+traceroute)权限管理
chmod -R 755 dir/
:递归修改目录权限chown user:group file
:修改属主和属组umask 022
:设置默认创建文件权限用户操作
sudo -i
:切换为root(保留环境变量)passwd -l user
:锁定用户账号adduser --disabled-login service_user
:创建无登录权限的系统用户快捷键
Ctrl + R
:反向搜索命令历史Ctrl + A/E
:跳转到行首/行尾!!
:重复上一条命令(如sudo !!
)组合命令
command | tee output.log
:输出到屏幕同时保存到文件tar -czvf backup.tar.gz --exclude="*.tmp" dir/
:压缩时排除文件rsync -avz --delete src/ user@host:dst/
:增量同步(镜像模式)后台任务
nohup command &
:退出终端仍运行disown -h %1
:将作业从终端分离apt update && apt upgrade -y
apt-cache search package
yum install -y package
rpm -ql package
(查看安装文件)strace -p pid
:跟踪进程系统调用journalctl -u nginx --since "1 hour ago"
:查看服务日志(systemd)dmesg -T | tail -20
:查看内核日志(带时间戳)掌握这些命令后,可覆盖90%的日常运维场景。建议通过man command
查阅手册页深入学习参数用法。