liunx运维进阶脚本
一、文件与目录操作
1.快速创建目录树
mkdir -p project/{src,doc,test/{unit,integration}}
创建嵌套目录结构,避免逐层创建。
2查找并删除7天前的日志文件
find /var/log -name "*.log" -mtime +7 -exec rm -f {} \;
结合find
和exec
实现定时清理。
3.批量重命名文件
rename 's/.txt/.md/' *.txt # 将当前目录所有.txt后缀改为.md
4.实时监控文件变化
tail -f /var/log/syslog | grep "error"
动态跟踪日志并过滤关键词。
二、文本处理
1.统计代码行数
find src/ -name "*.py" -exec cat {} \; | wc -l
2.批量替换文件内容
sed -i 's/old_string/new_string/g' `grep -rl "old_string" /path/to/files/`
3.查看文件差异并高亮
diff -u file1 file2 | colordiff
三、系统监控
1.按内存占用排序进程
ps aux --sort=-%mem | head -n 10
2.磁盘空间可视化
du -h --max-depth=1 / | sort -h
显示根目录下各子目录大小并排序。
3.实时监控网络流量
nload eth0 # 需安装nload
四、网络与安全
1.测试端口连通性
nc -zv example.com 443
2.生成SSH密钥对免密登录
ssh-keygen -t ed25519 && ssh-copy-id user@remote
3.快速搭建HTTP服务器
python3 -m http.server 8000 # 共享当前目录
五、效率工具
1.历史命令搜索
按 Ctrl+R
后输入关键词,快速查找执行过的命令。
2.后台任务管理
bg %1# 将暂停的任务1放到后台运行
fg %2# 将后台任务2切换到前台
3.压缩时排除指定文件
tar -czvf backup.tar.gz --exclude="*.tmp" /data/
六、进阶技巧
1.命令结果作为参数
vim $(find . -name "config.xml")
2.创建临时文件
mktemp /tmp/tempfile.XXXXXX # 自动生成唯一临时文件
3.查看二进制文件内容
hexdump -C /bin/ls | head -n 20
4.SSH隧道端口转发
ssh -L 8080:localhost:80 user@remote # 本地8080映射到远程80端口
附:常用快捷键
Ctrl + A
/Ctrl + E
:移动光标到行首/行尾Ctrl + U
/Ctrl + K
:删除光标前/后内容Ctrl + W
:删除前一个单词Alt + .
:插入上一个命令的最后一个参数
技巧重点:善用
man
查看命令手册(如man find
)和tldr
获取简化帮助。这些技巧熟练后,Linux 操作效率将成倍提升!