- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
查看命令行历史第11章Shell
到目前为止,本书介绍的都是在bash shell中运行各种命令,一直没有关注shell本身。本章将介绍两个影响shell使用的命令:history和alias,前者可以列出所有在命令行中输入的命令,后者可以为命令创建快捷方式。这两个命令很有用,能够在使用命令行时为你节省大量时间。对于计算机用户,懒惰并不是件坏事。在使用Linux系统时,这两个命令一定能尽可能地满足用户懒惰的要求。
11.1 查看命令行历史
history
每当在shell中输入命令时,命令就会保存在主(home)目录中一个名为.bash_history的文件里(文件名之前的点号表示这是一个隐藏文件,只有用ls -a才能显示出来)。在默认情况下,这个文件只保存必威体育精装版的500条命令行历史记录。要查看命令行历史列表,只需输入history命令。如下所示:
$?history? ?
?
??496?ls ?
??497?cd?rsync_ssh ?
??498?ls ?
??499?cat?linux ?
??500?exit?
因为正在查看的命令可能会有500条,它们会快速地闪过屏幕,在到达最后一条记录之前,快得看不清任何内容。想要一次只查看一个屏幕的内容,就得靠老朋友less命令了。如下所示:
$?history?|?less?
现在就能非常容易地逐一查看结果了。
警告?现在应该明白为什么在命令行中输入密码以及其他敏感信息时,需要谨慎的原因了吧:任何能够查看.bash_history文件的人,都能够看到那些密码。小心些,仔细想想在命令行中直接输入了什么!
11.2 再次运行最近运行过的命令
!!
如果想再次运行刚刚使用过的那条命令,只要输入两个叹号(!!),就能查看命令历史文件,并运行其中的最后一条命令。如下所示:
$?pwd ?
/home/scott ?
$?!! ?
pwd ?
/home/scott?
注意,先看到的是将要运行的实际命令,接着看到的是该命令的执行结果。让计算机做些乏味的工作,这是个非常有用的办法。11.3 使用数字再次运行以前运行过的命令
![##]?
当运行history时,它自动在每条命令前加一个数字。如果想运行前面的某条命令,而且也知道history赋予它的数字,这时只需要在感叹号后面跟上命令的历史编号,就能再次运行这个命令。如下所示:
$?pwd ?
/home/scott ?
$?whoami ?
scott ?
$?!499?
pwd ?
/home/scott?
如果不确定这个数字是多少,再运行history命令找找看。要注意的是,在这个例子中,pwd命令第一次的历史数字是499,但在用!499再次运行这个命令后,它就变成了498,因为新命令把它在列表中向下推了一位。
11.4 使用字符串再次运行以前运行过的命令
![string]?
能够通过引用命令的历史编号来再次运行它,当然不错。但这需要事先知道命令在history中的编号,而查找这个编号多少有点麻烦(虽然把history的输出通过管道传递给grep命令可能会有帮助,但仍然不是最好的办法)。为了引用以前输入的命令,通常更好的办法是按照命令的实际名称来引用。如果在感叹号后面输入某个命令的前几位字母,shell将运行它能够在.bash_history文件中找到的与之匹配的第一个命令。
$?cat?/home/scott/todo ?
Buy?milk ?
Buy?dog?food ?
Renew?Linux?Magazine?subscription ?
$?cd?/home/scott/pictures ?
$?!cat ?
cat?/home/scott/todo ?
Buy?milk ?
Buy?dog?food ?
Renew?Linux?Magazine?subscription?
如果在命令历史中找到3个cat命令的运行记录,即35(cat /home/scott/todo)、412(cat /etc/apt/sources.list)和496(cat /home/scott/todo),而此时输入!cat,就会运行编号为496的那条命令。如果要运行编号为412的命令,要么直接运行!412,要么在感叹号后面提供足够多的信息,让命令可以判断出要引用的是编号为412的命令。
$?!cat?/etc ?
cat?/etc/apt/sources.list ?
deb?/ubuntu?breezy?main?restricted ?
deb-src?/ubuntu?breezy ?
?main?restricted?
因为人类记忆单词要比记忆数字容易得多,所以最终可能还是采用通过字符串的方法来调用以前运行过的命令。如果觉得不确定,可以运行h
您可能关注的文档
最近下载
- 突发公共卫生事件应急处置预案专业知识培训.ppt
- 脑出血进展与指南解读白色ppt课件.ppt
- DB33酸性土壤改良技术规范.pdf
- 上海牛津(全国版)一年级英语上册《期末测试卷(二)》.doc
- 高中政治课程中跨学科融合的研究教学研究课题报告.docx
- 华为认证智能协作中级HCIP-CollaborationH11-861考试题及答案 (2).pdf
- 2023版29490-2023企业知识产权合规管理体系管理手册及全套程序文件.docx
- OMRON欧姆龙健康血压计血压计J7136说明书用户手册.pdf
- DB13_T 5414-2021 气瓶追溯管理系统规范.docx
- 第三讲把人民放在心中最高位置(课件)+学生读本高年级学生读本.pptx
文档评论(0)