您的位置:首页 > 其它

history命令

2016-07-26 15:00 337 查看



history是什么及讲解标题

history 用来保存历史命令,可以用来重复执行命令,可以有效地提升你的效率。在用户登录后新的输入命令历史会存在缓存中,当用户登出或者使用命令参数将可以缓存追加写入历史文件。历史文件存储于用户家目录下(~/.bash.history)。
讲解标题
history命令

重复执行上一个命令的多种方法

重复执行某一个命令的方法

调用历史命令的·某一个参数的方法

history历史的相关变量

history命令

~]#pwd
/root           历史文件存放位置
~]# cat .bash_history  查看历史文件
~]# history     可以查看到所有的历史命令
~]# history –a  将缓存的历史命令追加到文件中
~]# history –d  删除缓存历史命令中存放的某一条命令
~]# history –l   清空缓存中的所有命令
~]# history –r   将历史文件中命令附加到历史列表


重复执行上一个命令的多种方法

~]# !!
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
~]# !-1
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
快捷键:
Ctil+p
使用箭头上翻↑



重复执行某一个命令的方法

使用!number重复执行第几条历史命令

~]# !46
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
是用!命令 可以重复执行上一个开头的命令
~]# !ll
ll /etc/shadow
----------. 1 root root 929 Jul 25 22:01/etc/shadow



使用!?pass重复执行上一个以匹配字符的命令

~]# !?pass
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd



!-n重复执行之前的哪个命令
~]# !-8
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd


快捷键
使用↑和↓翻看执行
Ctrl+r 在历史命令中搜索关键字执行命令

调用历史命令的某一个参数的方法

重新调用上一个命令中的最后一个参数

~]#ll !$
ll/etc/networks
-rw-r--r--. 1 root root 58 May 12 03:34 /etc/networks
快捷键实现ESC+.(按Esc后松开再按)Alt+.(同时按住)
重新调用上一个命令中的某一个参数方法
~]#ll !^ 重新调用上一个命令的第一个参数
ll/etc/passwd
-rw-r--r--.1 root root 1628 Jul 25 22:01 /etc/passwd

~]#ll !3重新调用上一个命令的某个参数
ll/etc/networks
-rw-r--r--.1 root root 58 May 12 03:34 /etc/networks

ll !*重新调用上一个命令的所有参数
ll /etc/passwd /etc/shadow /etc/networks
-rw-r--r--. 1 root root   58 May 12 03:34 /etc/networks
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
----------. 1 root root  929 Jul 25 22:01 /etc/shadow
重新调用以上一个匹配关键命令开头的某个的参数方法

[root@centos6 ~]# ll !cat:^ 重新调用以上一个匹配关键命令开头的第一的参数
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
[root@centos6 ~]# ll !cat:$ 重新调用以上一个匹配关键命令开头的最后一个的参数
ll /etc/networks
-rw-r--r--. 1 root root 58 May 12 03:34/etc/networks
[root@centos6 ~]# ll !cat:2重新调用以上一个命令开头的指定一个参数
ll /etc/shadow
----------. 1 root root 929 Jul 25 22:01/etc/shadow
[root@centos6 ~]# ll !cat:* 重新调用以上一个匹配关键命令开头的所有参数
ll /etc/passwd /etc/shadow /etc/networks
-rw-r--r--. 1 root root   58 May 12 03:34 /etc/networks
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
----------. 1 root root  929 Jul 25 22:01 /etc/shadow




重新调用某一命令号的某个参数

[root@centos6 ~]# ll !90:^ 重新调用某一命令号的第一个参数
ll /etc/passwd
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
[root@centos6 ~]# ll !90:$ 重新调用某一命令号的最后一个参数
ll /etc/networks
-rw-r--r--. 1 root root 58 May 12 03:34/etc/networks
[root@centos6 ~]# ll !90:2重新调用某一命令号的指定某个参数
ll /etc/shadow
----------. 1 root root 929 Jul 25 22:01/etc/shadow
[root@centos6 ~]# ll !90:* 重新调用某一命令号的所有参数
ll /etc/passwd /etc/shadow /etc/networks
-rw-r--r--. 1 root root   58 May 12 03:34 /etc/networks
-rw-r--r--. 1 root root 1628 Jul 25 22:01/etc/passwd
----------. 1 root root  929 Jul 25 22:01 /etc/shadow




history历史的相关变量

HISTSIZE 命令历史记录条数

~]# echo $HISTSIZE
1000


HISTFILESIZE 命令历史文件记录条数

~]# echo $HISTFILESIZE
1000

~]# HISTTIMEFORMAT="%F %T" 设置缓存列表显示时间(登出失效)


设置环境变量自动生(可以在用户家目录下.bash_profile设置变量,但是只针对于这个用户生效,也可以在文件/etc/profile下设置变量针对所有用户生效)
HISTCONTROL=””
export 环境变量名=”值”
ignoredups:忽略重复的命令;连续且相同方为“重复”
ignorespace:忽略所有以空白开头的命令
ignoreboth=ignoredups, ignorespace
erasedups:删除重复命令
vim /etc/profile
export HISTCONTROL="ignoreboth"






内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  history