Linuxコマンド辞典 fcコマンド(システム管理)

コマンド履歴を表示/編集して実行する「fc」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

概要・使用方法

書式

$ fc [オプション] [開始番号] [終了番号]
$ fc -s [対象パターン=置き換え文字列] [コマンド]

fcは「フィックスコマンド」の略です。コマンド履歴をエディタで開き、編集したコマンド履歴を実行します。オプション無しで実行した場合は、エディタが起動しコマンド履歴より最後に実行されたコマンドの編集画面を表示します。エディタを終了すると編集したコマンドを実行します。エディタは環境変数FCEDITに指定されたプログラムが起動します。

変数FCEDITが存在しない場合は、変数EDITORが使用されます。コマンド履歴は実行順に数字が振られて表示されます。コマンドの編集や、再実行する範囲をコマンド履歴の行数で、開始番号と終了番号で指定して編集/実行ができます。終了行数番号は直前のコマンドを指定する場合は「-1」を指定します。

オプション

-nコマンド番号をつけない
-l [数]コマンド履歴を標準出力に出力(デフォルトは、-16)
-rコマンド履歴を逆にして表示

コマンド履歴を表示する

実行結果

[rocky@i-12100000422539 ~]$ fc
ls

コマンド履歴を表示する

3つ前のコマンドから直前までの履歴を表示する

実行結果

[rocky@i-12100000422539 ~]$ echo "123"
123
[rocky@i-12100000422539 ~]$ echo "234"
234
[rocky@i-12100000422539 ~]$ echo "345"
345
[rocky@i-12100000422539 ~]$ fc -l -3 -1
56       echo "123"
57       echo "234"
58       echo "345"
[rocky@i-12100000422539 ~]$ 

4つ前のコマンドから2つ前までの履歴を逆順に表示する

実行結果

[rocky@i-12100000422539 ~]$ fc -rl -4 -2
58       echo "345"
57       echo "234"
56       echo "123"
[rocky@i-12100000422539 ~]$ 

視点だけを指定すれば指定した数の履歴が表示される

実行結果

[rocky@i-12100000422539 ~]$ fc -l -4
57       echo "234"
58       echo "345"
59       fc -l -3 -1
60       fc -rl -4 -2

複数行の実行履歴を編集/実行する

2つ前から1つ前までのコマンドをエディタで編集する

実行結果

[rocky@i-12100000422539 ~]$ fc -2 -1

コマンド履歴を編集して実行する

vi /tmp/1の「1」を「2」に置き換えて実行する

実行結果

[rocky@i-12100000422539 ~]$ vi /tmp/1
[rocky@i-12100000422539 ~]$ fc -s "1=2"
vi /tmp/2