1 | fc
|
2 | ===
|
3 |
|
4 | 显示历史列表中的命令或修改指定的历史命令并执行。
|
5 |
|
6 | ## 概要
|
7 |
|
8 | ```shell
|
9 | fc [-e ename] [-lnr] [first] [last]
|
10 | fc -s [pat=rep] [command]
|
11 | ```
|
12 |
|
13 | ## 主要用途
|
14 |
|
15 | - 显示历史列表中的命令。
|
16 |
|
17 | - 编辑并重新执行历史列表的命令。
|
18 |
|
19 | ## 选项
|
20 |
|
21 | ```shell
|
22 | -e ename 选择使用的编辑器,默认调用次序为环境变量`FCEDIT`、环境变量`EDITOR`、`vi`。
|
23 | -l 列出而不是编辑。
|
24 | -n 列出时不输出行号(需配合-l选项)。
|
25 | -r 倒序列出命令,最近执行的先列出(需配合-l选项)。
|
26 | -s [pat=rep] [command] command(未指定时为最后执行的命令)将在pat替换为rep后重新执行。
|
27 | ```
|
28 |
|
29 | ## 参数
|
30 |
|
31 | first:可选;可以是字符串(以该字符串开头的最新命令)、数字(历史列表索引,负数代表当前命令号的偏移);未指定时设置为前一个命令并且偏移量为-16(最近的16条命令)。
|
32 |
|
33 | last:可选;可以是字符串(以该字符串开头的最新命令)、数字(历史列表索引,负数代表当前命令号的偏移);未指定时设置为参数first。
|
34 |
|
35 | ## 返回值
|
36 |
|
37 | 返回成功或执行命令的状态,当错误出现时返回非0值。
|
38 |
|
39 | ## 例子
|
40 |
|
41 | 替换命令参数:
|
42 |
|
43 | ```shell
|
44 | # 列出 ~ 目录
|
45 | ls ~
|
46 | # 替换 ~ 为 / ,替换后列出根目录,
|
47 | fc -s ~=/
|
48 | ```
|
49 |
|
50 | 显示最近使用的10条历史命令:
|
51 |
|
52 | ```shell
|
53 | [root@localhost ~]# fc -l -10
|
54 | 1039 type -a grep
|
55 | 1040 export
|
56 | 1041 history 10
|
57 | 1042 ulimit -a
|
58 | 1043 shopt
|
59 | 1044 help ls
|
60 | 1045 help env
|
61 | 1046 help short
|
62 | 1047 help shopt
|
63 | 1048 showkey -a
|
64 | ```
|
65 |
|
66 | 编辑第1040条历史命令:
|
67 |
|
68 | ```shell
|
69 | [root@localhost ~]# fc 1040
|
70 | ```
|
71 |
|
72 |
|
73 | ### 注意
|
74 |
|
75 | 1. 关闭终端后,历史列表将被写入历史文件`~/.bash_history`。
|
76 | 2. 环境变量`FCEDIT`的值为`fc`默认的编辑器。
|
77 | 3. 该命令是bash内建命令,相关的帮助信息请查看`help`命令。
|
78 |
|
79 |
|
80 |
|