• 【shell】 shell 敏捷开发


      经常看到一些大牛操作linux的时候,双手运指如飞,指令如流水般输出,会不会感到羡慕呢?

        本文就整理了一些linux下shell的技巧,保管你学会之后,shell输出apm突飞猛进,开个玩笑,我们进入正题。

        一般来说shell的命令行编辑使用Emacs或者Vi模式,也就是说可以用Emacs或者Vi的操作指令来进行命令行的编辑,默认的模式是Emacs模式。

        Ctrl+T:将光标所在处的字符和光标前一字符对调,T,可以理解为Transfer。
        Alt+T:交换两个光标当前所处位置单词和光标前一个单词。
        Ctrl+U:从光标所在处开始删除字符,直到行首;u,可以理解为undo光标前所有输入。
        Ctrl+Y:恢复Ctrl+U删除的字符;y,可以理解为vim里的yank(复制)。
        Ctrl+?:删除所有字符,比Ctrl+U强。
        Ctrl+K:从光标所在处开始删除字符,直到行尾。
        Ctrl+W:删除最后一个单词;W,Word。
        Ctrl+A:移动光标到行首。
        Ctrl+E:移动光标到行尾;E,End。
        Ctrl+C:取消全部键入。
        Ctrl+H:删除一个字符,相当于“delete”键,觉得“delete”键太远可以使用此快捷键;h,可以理解为vim里的左移键。
        Ctrl+F:光标向右移动一个字符位置,F,Forward。
        Ctrl+B:光标向左移动一个字符位置,B,Backward。
        Ctrl+方向键左键:光标移动到前一个单词开头。
        Ctrl+方向键右键:光标移动到后一个单词结尾。
        Ctrl+X:在上次光标所在字符和当前光标所在字符之间跳转。
        Alt+F:跳到光标所在位置单词尾部。
        Alt+U:把光标当前位置单词变为大写,并移动光标到下一个单词的起始位置前,U,uppercase。
        Alt+L:把光标当前位置单词变为小写,并移动光标到下一个单词的起始位置前,L,lowercase。
        Alt+C:把光标当前位置单词变为大写,并移动光标到下一个单词的起始位置前。
        ^OldStr^NewStr:把前一次命令中字符串OldStr替换成NewStr,例如上一次命令是ls tmp1, ^tmp1^tmp2    相当于执行ls tmp2。

        ~快捷键
        Ctrl+L:清屏,相当于键入clear。
        Ctrl+R:搜索命令历史,搜索结果以最近执行的命令为先,又称反向搜索。
         Alt+.:上一次执行的命令的最后一个参数,如果上一个命令没有参数,则显示上一个命令。
        Ctrl+P:向前浏览历史命令跟键盘上这个类似 ↑。
        Ctrl+N:向后浏览历史命令 跟键盘上这个类似↓。
        Alt+P:输入字符查找与字符相接近的历史命令。
        Ctrl+I:类似Tab健补全功能。

        ~大括号
        例子1:echo {big,small}SB
        终端显示:bigSB smallSB
        注意:大括号内的字符、右括号和紧邻的字符不要加入空格。

        例子2:cp {filea,fileb} dir
        上面的命令等效于:cp filea dir;cp filrb dir

        ~控制字符
        Ctrl-C 终止前台进程 Kill foreground process
        Ctrl-Z 挂起前台进程Suspend foreground process
        Ctrl-D 终止终端输入,退出shell Terminate input, or exit shell
        Ctrl-S 挂起输出 Suspend output
        Ctrl-Q 重新开始输出 Resume output
        Ctrl-O 忽略输出 Discard output
        Ctrl-L 清屏 Clear screen

        可以用stty命令,stty -a,查看或者设置终端的控制字符 

        看了这些快捷键,是不是感觉自己的功力又厉害了很多呢?

    关注公众号 海量干货等你
  • 相关阅读:
    我不喜欢的 Rust 特性 (之一) eager drop
    为 Windows Phone 8.1 app 解决“The type does not support direct content.”的问题
    输入10个互不相同的数字并分成5对,问有多少种分法。
    code wars quiz: toInteger
    my first emacs custom key binding
    http协议消息报头学习笔记
    移动端经常遇到的小bug
    js小技巧
    ajax
    js正则表达
  • 原文地址:https://www.cnblogs.com/sowhat1412/p/12734229.html
Copyright © 2020-2023  润新知