作为IT工程师,掌握高效的Linux命令行技巧能极大提升工作效率。以下是一些实用技巧:
快速导航
cd - # 返回上一个工作目录
pushd /path # 将目录压入栈
popd # 弹出栈顶目录
历史命令
!! # 重复上一条命令
!$ # 上一条命令的最后一个参数
!ssh # 执行最近以ssh开头的命令
Ctrl+R # 反向搜索命令历史
通配符扩展
ls *.log # 列出所有.log文件
ls {a,b,c}.txt # 匹配a.txt, b.txt, c.txt
ls file{1..10} # 匹配file1到file10
高效查看文件
less +F file.log # 实时跟踪文件(类似tail -f)
head -n 20 file # 查看前20行
tail -n 30 file # 查看后30行
查找文件
find /path -name "*.conf" -mtime -7 # 查找7天内修改的.conf文件
locate filename # 快速查找(需先updatedb)
grep -r "pattern" /path # 递归搜索内容
文件比较
diff -u file1 file2 # 统一格式差异比较
vimdiff file1 file2 # 使用vim可视化比较
comm -12 file1 file2 # 显示两个文件共有的行
进程监控
htop # 增强版top
watch -n 1 "ps aux | grep process" # 每秒监控进程
pidstat -p PID 1 # 监控特定进程资源使用
后台任务
command & # 后台运行
nohup command & # 退出终端后继续运行
disown -h %1 # 使作业与终端分离
网络诊断
curl -v http://example.com # 详细HTTP请求
mtr hostname # traceroute+ping组合
ss -tulnp # 查看监听端口(现代版netstat)
数据传输
rsync -avz source/ user@host:dest/ # 高效同步
scp -C file user@host:path # 压缩传输
nc -l 1234 > file # 简单文件接收
硬件信息
lscpu # CPU信息
lsblk # 块设备信息
dmidecode # 详细硬件信息
性能监控
vmstat 1 # 系统资源使用概况
iostat -x 1 # 磁盘I/O统计
sar -n DEV 1 # 网络接口统计
命令行编辑
Ctrl+A # 移动到行首
Ctrl+E # 移动到行尾
Ctrl+U # 删除到行首
Ctrl+K # 删除到行尾
Alt+. # 插入上一条命令的最后一个参数
命令组合
command1 | tee file.txt # 同时输出到屏幕和文件
command1 && command2 # command1成功才执行command2
command1 || command2 # command1失败才执行command2
批量处理
parallel -j 4 wget {} ::: url1 url2 url3 # 并行下载
for i in {1..10}; do command $i; done # 简单循环
正则表达式
grep -E 'pattern1|pattern2' file # 扩展正则
sed -E 's/([0-9]+)/\1/' file # 使用捕获组
awk '/pattern/ {print $1}' file # 模式匹配处理
SSH技巧
ssh -L 8080:localhost:80 user@host # 本地端口转发
ssh -D 1080 user@host # SOCKS代理
ssh-copy-id user@host # 复制公钥
这些技巧只是Linux命令行强大功能的冰山一角。掌握它们能显著提高工作效率,建议在实际工作中多加练习和应用。