前のコマンドの最初の単語を変更する

前のコマンドの最初の単語を変更する

例えば次のように入力します

cat /very/long/path/textfile

そしてその直後に私は次の命令を出すことにした

rm /very/long/path/textfile

そこで質問です。前のコマンドの最初の単語を置き換える最も簡単かつ最速の方法は何ですか? (矢印キーやコピー アンド ペーストを使わずに)

どのコマンドでも機能するはずです (cat、rm、textfile はこの例のためだけのもので、これらである必要はありません)

答え1

標準の履歴機能を備えたシェル(bash、Cシェルなど)を実行していると仮定して、新しいコマンド(例:rm)に続いて を入力します!*man bashman csh、または適切なものを入力して詳細を表示します(たくさんそのうちの)。

答え2

bash を使用している場合は、 と入力して<Esc>_、前のコマンドの最後の引数を取得できます。変数 を使用することもできます$_

別の方法としては、 を使用して前のコマンドを呼び出しCtrl-P、 を使用してCtrl-Aコマンドの先頭に移動し、 を使用してAlt-D最初の単語を削除し、新しい最初の単語 (コマンド名) を入力して Enter キーを押すという方法があります。

答え3

bash または sh を使用している場合は、最初のコマンドを入力してから「Alt」キーと「.」(ドット) キーを押すと、前のコマンドの最後の引数を取得できます。

cat /very/long/path/textfile

以前のコマンドタイプの最後の引数を使用する

rm "Alt+." を押すと

rm /very/long/path/textfile

関連情報