技巧:如何有效率的操作Linux命令行

bash有两种输入模式vi模式和emacs模式,其中emacs是默认模式, 操作起来也比vi模式要快捷.可以通过 set -o vi和set -o emacs来转换.

 

1.在命令历史中查找

强烈推荐使用 Ctrl r, 这个键组合是反向增量查找消息历史.很好用. 比如你很久以前输入过某个命令如. gcc -c -DKKT - Dnnn 等等,一长串, 用上下方向键来找比较困难,这时候可以Ctrl r,然后输入gcc很快找到该命令,重复按Ctrl r将查找更早的历史.

其实还有 Ctrl s 是正向增量查找的,但是 这个快捷键被终端预设成锁屏幕了,没有效果.不过可以使用命令 stty -ixon -ixoff来解除绑定.再举一个Ctrl r和Ctrl s的应用吧.

比如我打入了如下命令,

echo aa bb cc d ee ff gg kk qq

然后我发现我要修改一下,把d修改成dd,这时候只要Ctrl r 输入d,就立刻定位到d所在的位置,然后Ctrl f一下,再输入d即可

 

2.命令行中移动

Ctrl f Ctrl b 分别是前后移动一个字符的距离

Alt f Alt b 是前后移动一个单词的距离这个很快比如你输入了

$grep -e funtion file1 file2 file3

然后你发现funtion错了,要移动回来修改,则可以Alt b三下就移动回来了,很快.

Ctrl a Ctrl e 移动到行首和行尾.这个也很好用,如果输入了一长串命令行,发现第一个单词拼错了,可以Ctrl a到开头再进行修改.

 

3.删除

Alt d 往右边删除一个单词

Alt Backspace 往左删除一个单词

Ctrl u 往左删除到行首

Ctrl k 往右删除到行末

其中这些删除都放入了删除环里面,可以使用Ctrl y找回,Alt y在删除环里面移动也就是说命令行里面可以使用剪切和粘贴了.

上面的几条如果用熟练了效率能提高很多.

而如果还想了解更多的快捷键绑定,敲如下命令

bind -P

发现有些你需要的功能而没有快捷键绑定的话可以如下绑定,比如我绑定了两个函数

bind -m emacs '"M-w": kill-region'

bind -m emacs '"M-W": copy-region-as-kill'

你可能感兴趣的:(技巧:如何有效率的操作Linux命令行)