仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 664|回复: 8
打印 上一主题 下一主题

[其他Linux] 来一发Linux命令先容:history命令

[复制链接]
飘飘悠悠 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 11:10:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
如果你想在以后的生涯中在软件行业工作的话,学习linux是一项基本技能,所以打从你打算学习linux那天起,放弃windows吧!因为它除了能给你带来片刻的娱乐,别无其他;
假如你常常利用Linux命令行,那末利用history(汗青)命令能够无效地提拔你的效力。本文将经由过程实例的体例向你先容history命令的15个用法。
  利用HISTTIMEFORMAT显现工夫戳
  当你从命令行实行history命令后,一般只会显现已实行命令的序号和命令自己。假如你想要检察命令汗青的工夫戳,那末能够实行:
  #exportHISTTIMEFORMAT=%F%T
  #history|more
  12008-08-0519:02:39servicenetworkrestart
  22008-08-0519:02:39exit
  32008-08-0519:02:39id
  42008-08-0519:02:39cat/etc/redhat-release
  注重:这个功效只能用在当HISTTIMEFORMAT这个情况变量被设置以后,以后的那些新实行的bash命令才会被打上准确的工夫戳。在此之前的一切命令,都将会显现成设置HISTTIMEFORMAT变量的工夫。[感激NightOwl读者增补]
  利用Ctrl+R搜刮汗青
  Ctrl+R是我常常利用的一个快速键。此快速键让你对命令汗青举行搜刮,关于想要反复实行某个命令的时分十分有效。当找到命令后,一般再按回车键就能够实行该命令。假如想对找到的命令举行调剂后再实行,则能够按一下左或右偏向键。
  #[PressCtrl+Rfromthecommandprompt,whichwilldisplaythereverse-i-searchprompt]
  (reverse-i-search)`red‘:cat/etc/redhat-release
  [Note:Pressenterwhenyouseeyourcommand,whichwillexecutethecommandfromthehistory]
  #cat/etc/redhat-release
  Fedorarelease9(Sulphur)
  疾速反复实行上一条命令
  有4种办法能够反复实行上一条命令:
  利用上偏向键,并回车实行。
  按!!并回车实行。
  输出!-1并回车实行。
  按Ctrl+P并回车实行。
  从命令汗青中实行一个指定的命令
  鄙人面的例子中,假如你想反复实行第4条命令,那末能够实行!4:
  #history|more
  1servicenetworkrestart
  2exit
  3id
  4cat/etc/redhat-release
  #!4
  cat/etc/redhat-release
  Fedorarelease9(Sulphur)
  经由过程指定关头字来实行之前的命令
  鄙人面的例子,输出!ps并回车,将实行以ps打头的命令:
  #!ps
  psaux|grepyp
  root169470.00.1365161264?Sl13:100:00ypbind
  root175030.00.04124740pts/0S+19:190:00grepyp
  利用HISTSIZE把持汗青命令纪录的总行数
  将上面两行内容追加到.bash_profile文件偏重新登录bashshell,命令汗青的纪录数将酿成450条:
  #vi~/.bash_profile
  HISTSIZE=450
  HISTFILESIZE=450
  利用HISTFILE变动汗青文件称号
  默许情形下,命令汗青存储在~/.bash_history文件中。增加以下内容到.bash_profile文件偏重新登录bashshell,将利用.commandline_warrior来存储命令汗青:
  #vi~/.bash_profile
  HISTFILE=/root/.commandline_warrior
  利用HISTCONTROL从命令汗青中剔除一连反复的条目
  鄙人面的例子中,pwd命令被一连实行了三次。实行history后你会看到三条反复的条目。要剔除这些反复的条目,你能够将HISTCONTROL设置为ignoredups:
  #pwd
  #pwd
  #pwd
  #history|tail-4
  44pwd
  45pwd
  46pwd[Notethattherearethreepwdcommandsinhistory,afterexecutingpwd3timesasshownabove]
  47history|tail-4
  #exportHISTCONTROL=ignoredups
  #pwd
  #pwd
  #pwd
  #history|tail-3
  56exportHISTCONTROL=ignoredups
  57pwd[Notethatthereisonlyonepwdcommandinthehistory,evenafterexecutingpwd3timesasshownabove]
  58history|tail-4
  利用HISTCONTROL扫除全部命令汗青中的反复条目
  上例中的ignoredups只能剔除一连的反复条目。要扫除全部命令汗青中的反复条目,能够将HISTCONTRO
123下一页


使用gcc或g++进行编译,使用gdb进行调试;
飘飘悠悠 该用户已被删除
沙发
 楼主| 发表于 2015-1-16 12:22:11 | 只看该作者

来一发Linux命令先容:history命令

尽我能力帮助他人,在帮助他人的同时你会深刻巩固知识。
L设置成erasedups:</P>  #exportHISTCONTROL=erasedups
  #pwd
  #servicehttpdstop
  #history|tail-3
  38pwd
  39servicehttpdstop
  40history|tail-3
  #ls-ltr
  #servicehttpdstop
  #history|tail-6
  35exportHISTCONTROL=erasedups
  36pwd
  37history|tail-3
  38ls-ltr
  39servicehttpdstop
  [Notethatthepreviousservicehttpdstopafterpwdgoterased]
  40history|tail-6
  利用HISTCONTROL强迫history不记着特定的命令
  将HISTCONTROL设置为ignorespace,并在不想被记着的命令后面输出一个空格:
  #exportHISTCONTROL=ignorespace#ls-ltr#pwd#servicehttpdstop[Notethatthereisaspaceatthebeginningofservice,toignorethiscommandfromhistory]#history|tail-367ls-ltr68pwd69history|tail-3
  利用-c选项扫除一切的命令汗青
  假如你想扫除一切的命令汗青,能够实行:
  #history-c
  命令交换
  鄙人面的例子里,!!:$将为以后的命令取得上一条命令的参数:
  #lsanaconda-ks.cfg
  anaconda-ks.cfg
  #vi!!:$
  vianaconda-ks.cfg
  增补:利用!$能够到达一样的效果,并且更复杂。[感激wanzigunzi读者增补]
  下例中,!^从上一条命令取得第一项参数:
  #cpanaconda-ks.cfganaconda-ks.cfg.bak
  anaconda-ks.cfg
  #vi-5!^
  vianaconda-ks.cfg
  为特定的命令交换指定的参数
  鄙人面的例子,!cp:2从命令汗青中搜刮以cp开首的命令,并猎取它的第二项参数:
  #cp~/longname.txt/really/a/very/long/path/long-filename.txt
  #ls-l!cp:2
  ls-l/really/a/very/long/path/long-filename.txt
  下例里,!cp:$猎取cp命令的最初一项参数:
  #ls-l!cp:$
  ls-l/really/a/very/long/path/long-filename.txt
  利用HISTSIZE禁用history
  假如你想禁用history,能够将HISTSIZE设置为0:
  #exportHISTSIZE=0
  #history
  #[Notethathistorydidnotdisplayanything]
  利用HISTIGNORE疏忽汗青中的特天命令
  上面的例子,将疏忽pwd、ls、ls-ltr等命令:
  #exportHISTIGNORE=”pwd:ls:ls-ltr:”
  #pwd
  #ls
  #ls-ltr
  #servicehttpdstop
  #history|tail-3
  79exportHISTIGNORE=”pwd:ls:ls-ltr:”
  80servicehttpdstop
  81history
  [Notethathistorydidnotrecordpwd,lsandls-ltr]
  假如你常常利用Linux命令,那末利用history命令无疑会提拔你的事情效力。
  History命令次要用于显现汗青指令纪录内容,下达汗青记录中的指令。
  1>History命令语法:
  [test@linux]#history[n]
  [test@linux]#history[-c]
  [test@linux]#history[-raw]histfiles
  参数:
  n:数字,要列出比来的n笔命令列表
  -c:将今朝的shell中的一切history内容全体打消
  -a:将今朝新增的history指令新增进histfiles中,若没有加histfiles,
  则预设写进~/.bash_history
  -r:将histfiles的内容读到今朝这个shell的history影象中
  -w:将今朝的history影象内容写进histfiles
  Linux体系当你在shell(把持台)中输出并实行命令时,shell会主动把你的命令纪录到汗青列表中,一样平常保留在用户目次下的.bash_history文件中。默许保留1000条,你也能够变动这个值。
  假如你键进history,history会向你显现你所利用的前10
上一页123下一页


无论图形界面发展到什么水平这个原理是不会变的,Linux命令有许多强大的功能:从简单的磁盘操作、文件存取、到进行复杂的多媒体图象和流媒体文件的制作。
飘飘悠悠 该用户已被删除
板凳
 楼主| 发表于 2015-1-16 12:36:58 | 只看该作者

来一发Linux命令先容:history命令

如果你想在以后的生涯中在软件行业工作的话,学习linux是一项基本技能,所以打从你打算学习linux那天起,放弃windows吧!因为它除了能给你带来片刻的娱乐,别无其他;
00个汗青命令,而且给它们编了号,你会看到一个用数字编号的列表疾速从屏幕上卷过。你大概不必要检察1000个命令中的一切项目,固然你也能够到场数字来列出比来的n笔命令列表。</P>  linux中history命令不单单让我们能够查询汗青命令罢了.我们还能够使用相干的功效来帮我们实行命令。
  2>运转特定的汗青命令
  history会列出bash保留的一切汗青命令,而且给它们编了号,我们可使用“叹号接编号”的体例运转特定的汗青命令.
  语法申明:
  [test@linux]#[!number][!command][!!]
  参数申明:
  number:第几个指令的意义;
  command:指令的开首几个字母
  !:上一个指令的意义!
  3>History命令实战
  列出一切的汗青纪录:
  [test@linux]#history
  只列出比来10笔记录:
  [test@linux]#history10(注,history和10两头有空格)
  利用命令纪录号码实行命令,实行汗青清单中的第99条命令
  [test@linux]#!99(!和99两头没有空格)
  反复实行上一个命令
  [test@linux]#!!
  实行最初一次以rpm开首的命令(!??代表的是字符串,这个String能够任意输,Shell会从最初一条汗青命令向前搜刮,开始婚配的一条命令将会失掉实行。)
  [test@linux]#!rpm
  逐屏列出一切的汗青纪录:
  [test@linux]#history|more
  当即清空history以后一切汗青命令的纪录
  [test@linux]#history-c
  除利用history命令,在shell或GUI终端提醒下,你也能够利用高低偏向键来翻阅命令汗青(向下箭头会向前翻阅),直到你找到所需命令为止。这可让我们很便利地编纂后面的某一条命令,而不必反复输出相似的命令。
  History命令的用处的确很年夜!但必要当心平安的成绩!特别是root的汗青记录档案,这是黑客们的最爱!由于不当心的root会将良多的主要材料在实行的过程当中会被记录在~/.bash_history傍边,假如这个档案被剖析的话,成果不可思议

</p>
上一页123


看不懂man文档的人.在linux中,命令可分为系统基本命令和应用程序命令.系统基本命令是所有的unix类系统都支持的命令,走到哪都不变,只要是unix类系统上就肯定有.
金色的骷髅 该用户已被删除
地板
发表于 2015-1-27 10:19:14 | 只看该作者
不同于Windows?系统需要花钱购买,因为Linux的核心是免费的,自由使用的,核心源代码是开放的。
老尸 该用户已被删除
5#
发表于 2015-2-5 12:36:56 | 只看该作者
选择交流平台,如QQ群,网站论坛等。
若天明 该用户已被删除
6#
发表于 2015-2-11 21:55:50 | 只看该作者
得到到草率的回答或者根本得不到任何Linux答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。
飘灵儿 该用户已被删除
7#
发表于 2015-3-2 21:00:55 | 只看该作者
主流Linux发行版都自带非常详细的文档(包括手册页和FAQ),从系统安装到系统安全,针对不同层次的人的详尽文档,仔细阅读文档后40%问题都可在此解决。
再现理想 该用户已被删除
8#
发表于 2015-3-11 06:33:24 | 只看该作者
随着实验课程的结束,理论课也该结束了,说实话教OS的这两位老师是我们遇到过的不错的老师(这话放这可能不太恰当).
简单生活 该用户已被删除
9#
发表于 2015-3-25 11:22:57 | 只看该作者
一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 17:04

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表