
以下5个技巧在日常命令行工作中反复帮到我。不是什么高深的东西,但每一条至少帮我省过半小时以上的排查时间。
1. Ctrl+R的升级版:fzf模糊搜索
Ctrl+R反向搜索大家都知道,但2026年你应该用fzf替代它。装了fzf之后,按Ctrl+R弹出来的不是一个一个翻历史命令,而是模糊搜索列表——你输入ssh可能出来所有带ssh的历史命令,实时过滤。
安装:macOS上brew install fzf然后运行安装脚本。Linux上git clone然后运行install脚本。装完之后在.bashrc或.zshrc里加一行source即可。首次配置三分钟,之后每天至少省五分钟。
2. 用jq处理JSON别再grep了
API返回的JSON,很多人还是用grep来搜字段。随手举一个真实用法:你有一个100MB的JSON日志文件,想提取所有status为error的记录的时间戳。
用grep:grep error log.json能搜出来但夹杂了大量无关数据。用jq:cat log.json | jq 'select(.status=="error") | .timestamp' 一行搞定,输出干净。
jq学习曲线有点陡,但只需要会5个操作:.field取字段、[]遍历数组、select过滤、管道组合、-r输出原始文本。20分钟学会这五个,一辈子不用grep解析JSON。
3. 用rsync代替scp传大文件
scp传大文件有个致命问题:断了就得重来。rsync默认就是增量传输——只传变化的部分,而且断了可以续传。
日常用这个命令:rsync -avzP --partial /local/path user@host:/remote/path。-P显示进度且支持断点续传,-z压缩传输。传一个10GB的文件,哪怕中间断三次也不用从头再来。2026年rsync已经40多岁了,但到今天还是最好用的远程同步工具。
4. 用tmux保活远程任务
你SSH到服务器跑一个长时间任务,网络一断任务就没了。tmux是解决方案:在tmux session里跑的任务,断网后不会中断,重新连接后可以恢复。
基本用法就三个命令:tmux new -s name创建会话、Ctrl+B然后D脱离会话、tmux attach -t name重新连接。2026年很多VPS镜像已经预装了tmux。
我一般在服务器上更新系统或跑数据导入的时候必开tmux。一个真实的教训:之前SSH到服务器跑apt upgrade,跑了40分钟的时候WiFi断了。没有tmux,apt锁文件卡住了,还得手动清理,很麻烦。
5. 用lsof查端口占用
启动服务的时候端口冲突是最常见的报错之一。查谁占用了端口的命令:lsof -i :3000 或者 ss -tlnp | grep 3000。前者告诉你进程名和PID,后者在极简系统上也能用(比如Docker容器里通常只有ss没有lsof)。
顺手记一个:kill -9 $(lsof -t -i:3000) 直接杀掉占用3000端口的进程。但注意-t参数在不同系统上行为可能不一样,macOS和Linux都是返回PID。
这五个技巧的共同点:几十年前就有了,但2026年仍然每天都在帮人省时间。新技术层出不穷,但基本功永远有价值。
还木有评论哦,快来抢沙发吧~