写代码十年,有些命令行操作是从别人那偷学的,看着不起眼,但一旦会了每天能省不少时间。挑五个分享。
1. Ctrl+R 反向搜索历史命令
在终端里按Ctrl+R,然后输入关键词,可以搜索之前执行过的命令。比如你三天前跑过一个很长的docker命令,不记得具体参数了,Ctrl+R然后打"docker"就能翻出来。再按一次Ctrl+R继续往前翻。
更好用的是装一个fzf(模糊搜索工具),配合Ctrl+R使用,搜索界面直接变成可交互的列表,方向键选就行。
2. !! 重复上一条命令加sudo
最常见的场景:你敲了一条安装命令,回车后提示"Permission denied"。不用重新打整条命令,直接 sudo !! 回车就行。!!会被自动替换成上一条命令。
举个实际用法:
apt install nginx → 权限不够 → sudo !! → 搞定。
3. nohup 让任务后台运行不中断
远程SSH到服务器跑一个耗时任务(比如大文件传输、数据库导入),最怕的就是网络断掉导致任务中断。在命令前面加nohup,后面加&,任务就会在后台运行,SSH断开也不受影响。
用法:nohup 你的命令 > output.log 2>&1 &
输出会写到output.log里,随时可以tail -f output.log看进度。
4. jq 格式化和处理JSON
命令行里处理API返回的JSON数据,jq是必备工具。最基本的用法:curl某个API然后管道到jq,乱糟糟的JSON立刻格式化。
更实用的:从复杂JSON里提取特定字段。比如 curl api.example.com/users | jq .data[].name 能列出所有用户的名字。写shell脚本处理API数据的时候这个是基本功。
5. tmux 分屏和会话保持
如果你经常SSH到服务器操作,tmux值得花半小时学。两个核心功能:
分屏:一个窗口里分成上下左右几个面板,同时看log、编辑文件、跑命令。
会话保持:SSH断了,重新连上以后 tmux attach 就能回到刚才的工作状态,所有面板、命令输出都在。
我之前一直懒得学,直到有一次在服务器上跑了三个小时的数据库迁移,最后五分钟SSH断了——全白干。第二天就装了tmux。
这五个操作,花一个小时全部试一遍。以后每天都能省出半小时来。
标签: 命令行 Linux技巧 效率提升 终端操作 tmux
还木有评论哦,快来抢沙发吧~