|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对于开发环境的选择尽量要轻量级和高度可定制,航空母舰级别的工具往往会让你迷惑不解;
假如你常常利用Linux命令行,那末利用history(汗青)命令能够无效地提拔你的效力。本文将经由过程实例的体例向你先容history命令的15个用法。
1利用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
2利用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)
3疾速反复实行上一条命令
有4种办法能够反复实行上一条命令:
1利用上偏向键,并回车实行。
2按!!并回车实行。
3输出!-1并回车实行。
4按Ctrl+P并回车实行。
4从命令汗青中实行一个指定的命令
鄙人面的例子中,假如你想反复实行第4条命令,那末能够实行!4:
#history|more
1servicenetworkrestart
2exit
3id
4cat/etc/redhat-release
#!4
cat/etc/redhat-release
Fedorarelease9(Sulphur)
5经由过程指定关头字来实行之前的命令
鄙人面的例子,输出!ps并回车,将实行以ps打头的命令:
#!ps
psaux|grepyp
root169470.00.1365161264?Sl13:100:00ypbind
root175030.00.04124740pts/0S+19:190:00grepyp
6利用HISTSIZE把持汗青命令纪录的总行数
将上面两行内容追加到.bash_profile文件偏重新登录bashshell,命令汗青的纪录数将酿成450条:
#vi~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450
7利用HISTFILE变动汗青文件称号
默许情形下,命令汗青存储在~/.bash_history文件中。增加以下内容到.bash_profile文件偏重新登录bashshell,将利用.commandline_warrior来存储命令汗青:
#vi~/.bash_profile
HISTFILE=/root/.commandline_warrior
8利用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
9利用HISTCONTROL扫除全部命令汗青中的反复条目
上例中的ignoredups只能剔除一连的反复条目。要扫除全部命令汗青中的反复条目,能够将HISTCONTROL设置成erasedups:
#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
10利用HISTCONTROL强迫history不记着特定的命令
将HISTCONTROL设置为ignorespace,并在不想被记着的命令后面输出一个空格:
#exportHISTCONTROL=ignorespace
#ls-ltr
#pwd
#servicehttpdstop[Notethatthereisaspaceatthebeginningofservice,toignorethiscommandfromhistory]
#history|tail-3
67ls-ltr
68pwd
69history|tail-3
11利用-c选项扫除一切的命令汗青
假如你想扫除一切的命令汗青,能够实行:
#history-c
12命令交换
鄙人面的例子里,!!:$将为以后的命令取得上一条命令的参数:
#lsanaconda-ks.cfg
anaconda-ks.cfg
#vi!!:$
vianaconda-ks.cfg
13为特定的命令交换指定的参数
鄙人面的例子,!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
14利用HISTSIZE禁用history
假如你想禁用history,能够将HISTSIZE设置为0:
#exportHISTSIZE=0
#history
#[Notethathistorydidnotdisplayanything]
15利用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]
</p>
看不懂man文档的人.在linux中,命令可分为系统基本命令和应用程序命令.系统基本命令是所有的unix类系统都支持的命令,走到哪都不变,只要是unix类系统上就肯定有. |
|