ターミナル:前のファイルに別のコマンドを使用する

ターミナル:前のファイルに別のコマンドを使用する

!!前のコマンドを再利用するコマンドがあることを知っています。前のコマンドで指定されたファイルまたはディレクトリを再利用しながら他のコマンドを使用するにはどうすればよいですか?

例: ファイルの内容を見て、必要に応じて削除したいと思います。それは次のとおりです。

$ cat example.txt

"output indicates deletion"

$ rm !!

答え1

$ echo foo
foo
$ bar !!:$
bar foo
The program 'bar' is currently not installed...

http://www.gnu.org/software/bash/manual/bashref.html

答え2

あなたはそれを使用することができます:

  • rm Esc.-rmヒールを入力しSpaceた後、Escヒールを押します.(同時には押されません)。前のコマンドに引数がない場合は、前のコマンド自体を取得します。
  • rm Alt+ .- と入力し、rm(同時に)をSpace押します。実際にこの方法を使用してを放さずに押し続けると、履歴から各コマンドの最後の引数を取得できます。コマンドにパラメータがない場合は、コマンド自体を取得します。Alt..Alt
  • rm !*- この場合、前のコマンドのすべてのパラメータを取得します。前のコマンドにパラメーターがないと、何も取得されません。

一般的に言えば:<command> Esc.または<command> Alt+.または<command> !*

源泉:前のコマンドの引数を使用してコマンドを実行します。

答え3

これらすべてがあなたが望むことを達成します:

rm !$

!$最後のコマンドの最後のパラメータを示します。

rm!:1

!:1最後のコマンドのパラメーター1を示します。ここで、コマンド自体はパラメータ0です。このようにして、最後のコマンドで個々のパラメータを選択できます。

^cat^rm^

文字列をcat前のコマンドの文字列に置き換えてrm結果を実行します。^この簡単な例では、実際に最後の項目を省略できます。

rm !*

これはrm引き続き実行されますみんな最後のコマンドの非コマンドパラメーター。したがって、パラメータは1からまでです$。このバリアントと最後のパラメータは、最後のコマンドに複数のパラメータがある場合に便利です。

関連情報