1、清除历史命令

2、清除缓存

3、退出命令 

命令行历史
重复前一个命令,有4种方法
 重复前一个命令使用上方向键,并回车执行
 按 !! 并回车执行
 输入 !-1 并回车执行
按 Ctrl+p 
并回车执行
!:0 执行前一条命令(去除参数)
Ctrl + n 显示当前历史中的下一条命令,但不执行
Ctrl + j 执行当前命令
!n 执行history命令输出对应序号n的命令
!-n 执行history历史中倒数第n个命令

命令行历史
!string 重复前一个以“string”开头的命令
!?string 重复前一个包含string的命令
!string:p 仅打印命令历史,而不执行
!$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
!*:p 打印输出 !*(上一条命令的所有参数)的内容
^string 删除上一条命令中的第一个string
^string1^string2 将上一条命令中的第一个string1替换为string2
!:gs/string1/string2 将上一条命令中所有的string1都替换为 string2
命令行历史
使用up(向上)和down(向下)键来上下浏览从前输入的命令
ctrl-r来在命令历史中搜索命令
 reverse-i-search`’
Ctrl+g:从历史搜索模式退出
要重新调用前一个命令中最后一个参数
 !$ 表示
 Esc, .(点击Esc键后松开,然后点击 键)
 Alt+ .(按住Alt键的同时点击 键) 



调用历史参数
command !^ 利用上一个命令的第一个参数做cmd的参数
command !$ 利用上一个命令的最后一个参数做cmd的参数
command !* 利用上一个命令的全部参数做cmd的参数
command !:n 利用上一个命令的第n个参数做cmd的参数
command !n:^ 调用第n条命令的第一个参数
command !n:$ 调用第n条命令的最后一个参数
command !n:m 调用第n条命令的第m个参数
command !n:* 调用第n条命令的所有参数
30
command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一
个参数
command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一
个参数
command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n
个参数
command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有
参数
调用历史参数
命令history
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
-c: 清空命令历史
-d offset: 删除历史中指定的第offset个命令
n: 显示最近的n条历史
-a: 追加本次会话新执行的命令历史列表至历史文件
-r: 读历史文件附加到历史列表
-w: 保存历史列表到指定的历史文件
-n: 读历史文件中未读过的行到历史列表
-p: 展开历史参数成多行,但不存在历史列表中
-s: 展开历史参数成一行,附加在历史列表后

命令历史相关环境变量
 HISTSIZE:命令历史记录的条数
 HISTFILE:指定历史文件,默认为~/.bash_history
 HISTFILESIZE:命令历史文件记录历史的条数
 HISTTIMEFORMAT=“%F %T “ 显示时间


HISTTIMEFORMAT 设置历史命令时间的格式


echo 'HISTTIMEFORMAT="%F %T `whoami`"  ' >>/etc/bashrc

whoami 完了后面要有空格不然会连住和命令

======================

在/etc/bashrc下面添加一行:

HISTTIMEFORMAT="%F %T `whoami` "


 HISTIGNORE=“str1:str2*:… “忽略str1命令,str2开头的历史
 控制命令历史的记录方式:
环境变量:HISTCONTROL
ignoredups 默认,忽略重复的命令,连续且相同为“重复”
ignorespace 忽略所有以空白开头的命令
ignoreboth 相当于ignoredups, ignorespace的组合
erasedups 删除重复命令
 export 变量名="值“
 存放在 /etc/profile 或 ~/.bash_profile