7. 搜索历史命令并执行

Ctrl-r = 在命令历史记录中搜索命令并在找到匹配项后执行它。

#
(reverse-i-search)`uname': uname -a
www. On IT Road .com

4.按编号重复最后一个命令

!num = 按历史输出中的编号重复命令。
例如 :

# !1010
ls -lrth
total 197M
-rw-r--r-- 1 root root 512K Jan 25  2015 file1
drwxr-xr-x 2 root root 4.0K Jun  1  2016 dir1

3. 重复以某个字符开头的最后一个命令

!char = 重复以 char 开头的最后一个命令。
例如 :

# !uname
uname -a
Linux onitroad 2.6.32-504.el6.x86_64 #1 SMP Tue Sep 16 01:56:35 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux

5. 重复包含某些字符的最后一个命令

!?command = 重复包含(而不是以 [!char] 开头)命令的最后一个命令。
例子 :

# echo "I am legend"
I am legend
# !?legend
echo "I am legend"
I am legend

1. 列出最近使用的 n 个命令

默认情况下,history 命令显示最近使用的 1000 个命令。
如果我们只想列出用户触发的最后几个命令,请使用“history n”。
例如,要显示最近 5 个被触发的命令:

# history 5
  504  uname -a
  505  who am i
  506  date
  507  echo "Hi"
  508  history 5

6. 重复第 n 个最后一个命令

!-n = 重复输入 n 个命令的命令

# !-3
uname -a
Linux VMAX3Linux 2.6.32-358.el6.x86_64 #1 SMP Tue Jan 29 11:47:41 EST 2013 x86_64 x86_64 x86_64 GNU/Linux
UNIX/Linux bash history 命令

UNIX 世界中广泛使用的命令之一是 history 命令。
各种风格的 UNIX 都有 history 命令。
bash shell 存储输入的命令的历史记录,可用于通过使用 history 命令重复命令。
默认情况下,它会显示之前使用的 1000 个命令。

这是命令history的示例输出:

# history
    1  uname -a
    2  clear
    3  ssh root@192.168.1.50
    4  exit
    5  ls
    6  clear
    7  echo "Hello"
    ........

bash 历史机制支持多种从历史列表中检索命令的高级方法。
以下是使用 bash history 命令的一些方法:

2. 重复上一个命令

重复执行的最后一个命令:

# echo "I am history"
I am history
# !!
echo "I am history"
I am history
日期:2020-09-17 00:14:50 来源:oir作者:oir