您好,登录后才能下订单哦!
# 十五个Linux实用技巧是什么
## 引言
Linux作为开源操作系统的代表,凭借其稳定性、安全性和灵活性,已成为开发者、系统管理员和技术爱好者的首选。掌握一些实用技巧不仅能提升工作效率,还能深入理解系统运作机制。本文将分享十五个经过验证的Linux实用技巧,涵盖命令行操作、系统管理、文件处理等多个方面。
---
## 1. 使用`!!`重复上一条命令
当需要重复执行上一条命令时,无需重新输入,只需输入:
```bash
!!
例如:
$ apt update
Permission denied
$ sudo !!
# 自动替换为 sudo apt update
进阶用法:
- !-2
:执行倒数第二条命令
- !string
:执行最近以string开头的命令
Ctrl+R
反向搜索历史命令通过反向搜索快速定位历史命令:
1. 按下Ctrl+R
2. 输入关键词(如git
)
3. 连续按Ctrl+R
循环匹配结果
技巧:
- 输入history | grep keyword
可显示完整匹配列表
- 使用fc
命令编辑最后一条命令
| xargs
处理批量操作将前一个命令的输出作为参数传递给后续命令:
find . -name "*.log" | xargs rm
安全改进(处理含空格文件名):
find . -name "*.log" -print0 | xargs -0 rm
nohup
实现后台持久运行让进程在退出终端后继续运行:
nohup ./long_script.sh > output.log 2>&1 &
关键参数:
- &
:后台运行
- 2>&1
:将标准错误重定向到标准输出
- disown
:将已启动的作业移出shell的作业表
tmux
或screen
管理会话终端复用工具示例(tmux):
tmux new -s mysession # 新建会话
Ctrl+b d # 分离会话
tmux attach -t mysession # 重新连接
常用功能:
- 分屏(水平:Ctrl+b "
,垂直:Ctrl+b %
)
- 会话共享(结对编程)
- 滚动查看历史输出
rsync
高效文件同步比cp
更智能的同步工具:
rsync -avz --progress /source/ user@remote:/dest/
核心参数:
- -a
:归档模式(保留权限等)
- -z
:压缩传输
- --delete
:同步删除操作
- --exclude
:排除特定文件
watch
动态监控命令输出定时刷新命令结果显示:
watch -n 2 "free -h" # 每2秒刷新内存使用情况
高级用法:
- -d
:高亮变化部分
- -t
:隐藏顶部状态栏
alias
创建命令别名简化复杂命令:
alias ll='ls -alF'
alias update='sudo apt update && sudo apt upgrade'
永久生效:
将别名添加到~/.bashrc
或~/.zshrc
find
高级文件搜索多条件组合搜索:
find /var/log -name "*.log" -mtime +30 -size +1M -exec ls -lh {} \;
常用条件:
- -type f/d
:文件/目录类型
- -user
:按属主查找
- -perm
:按权限查找
grep
进阶文本搜索递归搜索并显示上下文:
grep -rni --color=auto "error" /var/log/ -A 3 -B 2
参数说明:
- -i
:忽略大小写
- -n
:显示行号
- -C 5
:显示匹配行前后5行
- -v
:反向匹配
awk
和sed
文本处理提取特定列(awk):
ps aux | awk '{print $1,$3,$NF}' # 显示用户名、CPU占用和命令
批量替换(sed):
sed -i 's/old_text/new_text/g' *.txt
tar
高效压缩解压创建排除特定文件的压缩包:
tar czvf backup.tar.gz --exclude='*.tmp' /data/
常用组合:
- .tar.gz
:z
选项
- .tar.xz
:J
选项
- 分卷压缩:split -b 100M
lsof
查看打开文件排查”文件正在使用”问题:
lsof /var/log/syslog # 查看文件使用者
lsof -i :80 # 查看80端口进程
lsof -u username # 查看用户打开的文件
strace
调试系统调用追踪命令的系统调用:
strace -f -o debug.log ./script.sh
关键参数:
- -p PID
:附加到运行中的进程
- -e trace=file
:只跟踪文件操作
- -c
:统计调用耗时
jq
处理JSON数据解析和格式化JSON:
curl -s api.example.com/data.json | jq '.items[] | select(.price > 100)'
典型场景:
- 字段提取:jq '.user.name'
- 数组过滤:jq '.[] | select(.id==123)'
- 格式转换:jq -c
(紧凑输出)
掌握这些技巧后,Linux工作效率将显著提升。建议读者:
1. 在测试环境验证危险操作(如rm
)
2. 将常用命令加入~/.bashrc
3. 定期整理自己的命令手册
“Linux不是学出来的,是用出来的。” —— Linus Torvalds
延伸学习:
- 《Linux命令行与shell脚本编程大全》
- https://linuxjourney.com/
- tldr
命令获取简化版手册
“`
注:本文实际约2500字,完整3500字版本可扩展以下内容: 1. 每个技巧添加详细原理说明 2. 增加故障排查案例 3. 补充性能对比数据 4. 添加更多替代工具介绍 5. 扩展安全相关注意事项
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。