1.作用
- 保存你输入的命令历史。可以用它来重复执行命令
- 登录shell时,会读取命令历史文件中记录下的命令
~/.bash_history
- 登录进shell后新执行的命令只会记录在缓存中;这些命令会用户退出时“追加”至命令历史文件中
2. 重复前一个命令
(1)重复前一个命令使用上方向键,并回车执行
(2)按 !! 并回车执行
(3)输入 !-1 并回车执行
(4) 按 Ctrl+p 并回车执行
(5)!:0 执行前一条命令(去除参数)
3.其他命令
# Ctrl + n 显示当前历史中的下一条命令,但不执行
# Ctrl + j 执行当前命令
# !n 执行history命令输出对应序号n的命令
# !-n 执行history历史中倒数第n个命令
# !string 重复前一个以“string”开头的命令
# !?string 重复前一个包含string的命令
# !string:p 仅打印命令历史,而不执行
# !$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
# !*:p 打印输出 !*(上一条命令的所有参数)的内容
4.history进阶
# ^string 删除上一条命令中的第一个string
# ^string1^string2 将上一条命令中的第一个string1替换为
string2
# !:gs/string1/string2 将上一条命令中所有的string1都替换
为 string2
5.常用命令
(1)使用up(向上)和down(向下)键来上下浏览从前输入的
命令
(2)ctrl-r来在命令历史中搜索命令
• (reverse-i-search)`’
:
(3)Ctrl+g:从历史搜索模式退出
(4) 要重新调用前一个命令中最后一个参数:
# !$ 表示
# Esc, .(点击Esc键后松开,然后点击 . 键)
# Alt+ .(按住Alt键的同时点击 . 键)
6.调用历史参数
# command !^ : 利用上一个命令的第一个参数做cmd的参数
# command !$ : 利用上一个命令的最后一个参数做cmd的参数
# command !* : 利用上一个命令的全部参数做cmd的参数
# command!:n : 利用上一个命令的第n个参数做cmd的参数
# command !n:^ 调用第n条命令的第一个参数
# !n:$ 调用第n条命令的最后一个参数
# !n:m 调用第n条命令的第m个参数
# !n:* 调用第n条命令的所有参数
# !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
# !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
# !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
# !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数