老师:“都什么时候了,小编怎么还不更新博客!!”
(装作四处看风景)路人甲:“大概...小编..小编还在睡觉吧~~~”
(↑听完小编在睡觉的消息后,老师的目光中散发出凶恶...不...慈爱的眼神)
(于是...老师点燃一支烟,深吸了一口气,与路人甲等人换上校服离开了教室;整齐的着装,令人无法接近的气场,过往的车辆都会避其三分...)
( ↑ 插 画 出自《偷星九月天》 )
小编在睡梦中,隐约的感觉门外有杀气,扭头看了看床头桌子上的闹钟。我了个X....已经..下午四点了,小编课还没讲....小编深知..一切都结束了...在人生即将终结的时刻,最后再享受一下床的温暖.....看着门外的众人并没有破门而入,终于...小编还是躺在了床上...
于是乎。。。小编睁开眼睛的时候....不知怎么,就出现在了教师门前...而现在的时间,可能是...哇~~已经~~这个时间了...小编感觉再不讲课就要真的被杀掉惹~~~
( ↑ 插 画 出自《偷星九月天》 )
老师:“我教过这么多学生,水贴的很多,但像你这么水的,你还是第一个”
嘛~~~不要在意这些细节啦~~小编只是讲的比较细而已~~才没有水贴~~
好啦~~小编这就开始这一章的内容吧~~
上一章,小编详细的给大家讲了 history命令历史,以及命令历史对应的配置文件 ~/.bash_history,和命令历史中的环境变量: HISTSIZE,HISTFILE,HISTFILESIZE,HISTTIMEFORMAT,以及 HISTCONTROL :其取值还有:ignoredups,ignorespace,ignoreboth,erasedups。而这些变量的用法,小编就不做过多的介绍了~因为~~上一章已经简单介绍过啦~~
那么,命令历史大家掌握后,如何来调用这些命令历史呢?小编就给大家介绍一下:
使用上一次使用过的命令,有四种方法:
1、重复上一条命令,可按键盘上方向键的 ↑ 键,然后回车即可。(小编先在终端输入 ls 命令用作测试。)
输入完命令后,想再次输入相同的指令,按 ↑ 方向键,然后回车。连续按 ↑ 键,命令会一直向上调用:上一个,上上一个,上上上一个...等~~
2、输入 !! 并回车即可~
3、输入 !-1 并回车~(其实这个,并不只是调用上一条命令,该命令调用的最近一次使用的第几条命令由后面的数字决定)
输入 !-1 会调用上一条命令,输入 !-2 则会调用上上一条命令,以此类推~~
4、按 ctrl+p 并回车(同样,连续按 p 会一直调用下去,意思就是:按两次 p 命令行会跳出上上一条命令)
当然,调用命令历史的方法还有多种:
!:0 :执行前一条命令(去除参数)
什么是参数,小编在最开始说命令的基本格式的时候就已经告诉大家了,小编就不做过多的介绍啦~对于这个,小编还用 ls 命令来做实验,这次加上参数
小编第一次是要列出/app目录下的内容,而执行了 !:0 /app这个参数就被去掉了,还有,小编可没有敲回车~~这条命令的作用是 执行 执行 执行~~
Ctrl+n:显示当前历史中的下一条命令,但不执行~
这个命令,小编就不做演示啦~~因为...太没用了,这个命令是翻命令历史的时候,突然发现...要调用的命令翻过了,然后可以用这个命令向下翻。
Ctrl+j:执行当前命令
这个....小编也不演示了....要执行命令...我们不是有 回车键 吗....
!n:执行history历史中,输出对应序号n的命令.(这个...意思就是...执行命令历史中,执行过的命令开头第一个字母是 n 的命令,所有,这个 n 字母可以变的。比如,小编执行一个 pwd 命令,然后把 n 变成 p)
!-n:执行history历史中倒数第n条命令(注意咯,这里的 n 可是一个数字)
!string(字符):执行以指定字符开头的命令(其实这个调用方式就是小编刚才在讲 !n 的时候所说的)
!?string:重复前一个包含string的命令
!string:p :仅打印命令历史,但不执行
所谓打印,就是在终端上显示一下~~~
!$:p :打印输出!$(上一条命令的最后一个参数)的内容
算了,小编还是在提醒一下什么是参数吧~~简单来说,就是除去 命令 和 命令选项的部分全是参数
!*:p :打印输出!*(上一条命令的所有参数)的内容
这个小编就不做演示了,与上面用法相同,只不过上一条命令有多个参数的时候,!* 将显示全部的参数,而 !$ 只显示最后一个参数
哇~~这么一看,调用命令历史的用法还挺多的嘛,现在小编才讲了一半~~算啦~~其他的都用不到,小编就把一些可能会用到的讲一下把~~~
COMMAND !^:用上一条命令的第一个参数作为本次输入命令的参数
COMMAND !$:用上一条命令的最后一个参数作为本次输入命令的参数
小编就不做示例啦~~用法与上面相同哦~~~
COMMAND !*:用上一条命令的全部参数作为本次输入命令的参数
COMMAND !:n :用上一条命令的第 n 个参数作为本次输入命令的参数
(注意咯,这里的 n 是一个具体的数字,输入的是 1 则调用上一条命令的第一个参数,2 则是调用的第二个参数...)
COMMAND !n:^ :调用第n条命令的第一个参数(注意咯,这里 n 也是具体的数)
COMMAND !n:$ :调用第n条命令的最后一个参数
COMMAND !n:m :调用第n条命令的第m个参数
COMMAND !n:* :调用第n条命令的所有参数
呼~好累,命令历史的调用不只是这些,还有...剩下的不多惹~~不多实际用途不大,小编就不讲咯~感兴趣的同学可以自己研究~~
关于命令历史的调用,小编接下来就把最实用的介绍一下吧:
ctrl+r:搜索命令历史
当按下 ctrl+r 时,命令行提示符将会变成图上面这个样子,当小编输入要查询的命令的关键字时:
命令行会自动跳出匹配到关键字的命令,若是我们要查找的命令,按 tab 键可确认。若想退出搜索,则:
ctrl+g:从历史搜索模式退出
对于调用上一条命令的最后一个参数,我们使用最多的还是:
Esc . :调用上一条命令的最后一个参数(按 Esc 键松开后再按 . )
这个...小编做示例表现不出效果~索性就不做啦~~留给同学们自己练习吧~~
好啦~~对于命令历史的调用,小编就介绍这么多吧~~其实大部分都没用哦~~~想调用命令历史的话,直接 按 方向键 的 上下箭头 即可~~但是后面这几个是有点用的~~~
...你...你们要干嘛....别...别过来....小编..小编这就讲一些有用的....哇~~~路人甲~快救我..
(成功被路人甲救出来的小编....)
呼~~果然还是路人甲最好了~~~
(脸红)路人甲:“才不是因为我想救你,我只是觉得没人给同学们讲课了而已”
(↑小编用意味深长的眼神看着路人甲):“傲娇~”
路人甲:“吵死啦!再不讲一些有用的,下次就不救你了”
好好好~~那么,小编就来讲一些能用到的~~
咳咳...介于路人甲想继续听小编讲课~~本来要完结的本章就追加一些内容吧~~这可是福利哦~~(吐槽:胡说!之前的博客都写4000字以上,现在才3000字,越来越偷懒了,还颜厚无耻的说是福利!)
嘛~~不要在意这些细节~~那么,接下来,小编就讲一下bash中的一些快捷键:
ctrl+l:清屏,或者clear
当我们命令的执行结果显示在终端上,过多时,我们可以用这些命令来清屏,可是经常使用的哦~~
回车之后,将会看到屏幕中干干净净的~~~
ctrl+s:阻止屏幕输出,锁定
当我们使用了这个快捷键之后,之后在命令行进行的任何操作都不会在终端显示,但实际上,我们输入的内容以及执行。比如,小编现在使用这个快捷键,然后再操作:
↑使用快捷键后,小编对着键盘一顿乱打~~然后屏幕上什么都没有发生~~
↓解除锁定后
这个用处,当我们工作时,防止别人偷学我们的技术~~可以将屏幕锁定然后...盲打~~那如何解除锁定呢?
ctrl+q:允许屏幕输出
使用完 ctrl+s 快捷键,向让终端恢复显示,再使用这个快捷键就好啦~~
ctrl+c:终止命令
这个快捷键是经常使用的,对于一些正在执行的命令,不想让它继续执行,我们就用这个快捷键来终止。
ctrl+z:挂起命令
所谓挂起,就是将正在执行的命令暂停,但不终止;暂停也只是在后台暂停运行,不会影响我们的其他操作。就向同学们用 windows 下载软件一样,将下载程序放在后台下载,想看进度时,双击图标将下载器调到前台。
那么,如何调到前台:
fg:将后台命令调到前台并运行
对于这个,小编就不再介绍啦~~毕竟是小编教出来的嘛~~可能能懂的~~
下面小编介绍的快捷键,小编这边给同学们做示例显示不出效果~~就由同学们自己下去练习吧~~才不是因为小编偷懒!
ctrl+a:光标移动到命令行的行首
ctrl+e:光标移动到命令号的行尾
ctrl+f:光标向右移动一个字符(按方向键的 → 键即可)
ctrl+b:光标向左移动一个字符(按方向键的 ← 键即可)
alt+f:光标向右移动一个单词尾(这个单词尾意思就是移动到下一个单词的尾部)
alt+b:光标向左移动一个单词首(移动到上一个单词的首部,但是,若当前光标在一个单词的尾部时,用这个快捷键依然会跳到当前单词的首部)
ctrl+xx:光标在当前位置和命令行行首之前切换
ctrl+u:从光标处删除至命令行首(将光标所处的位置到命令行行首中间的字符全部删除)
ctrl+k:从光标处删除至命令行尾(将光标所处的位置到命令行行尾中间的字符全部删除)
alt+r:删除当前整行
ctrl+w:从光标处向左删除至单词首
alt+d:从光标处向右删除至单词尾
ctrl+d:删除光标处的一个字符
ctrl+h:删除光标前的一个字符
ctrl+y:将删除的字符粘贴至光标后(前面的所有删除操作,都可以理解为剪切,可以用这个快捷键来粘贴)
alt+c:将光标所在处的字母改为大写,同时向右移动一位
alt+u:从光标处开始到单词的尾部的字符改为大写
alt+l:从光标处开始到单词的尾部的字符改为小写
好啦~~bash最基础的快捷键就介绍到这里啦~~
另外~!(敲黑板)注意咯~ Alt 组合的快捷键经常和其他软件冲突,会造成无法使用的现象~~可以设置其他软件上的快捷键来解决。
呼~~终于讲完了~~小编眼睛好痛~~小编要睡觉咯~休息一下(吐槽:你不是刚睡醒吗!)
The END