1. ホーム
  2. linux

bashの履歴を使って前のコマンドを取得し、それをコピーして、コマンドをコメント付きで'実行'します。

2023-07-15 20:34:41

質問

私の bash のスキルを向上させるための質問です。 私はいつもこうしています。

$ history | grep some_long_command

...
...
123 some_long_command1.........
124 some_long_command2.........
...

とすることで見つけたコマンドを実行することができます。

!123

しかし、よくこんなことをやりたくなります。

some_long_command1foobar

つまり、実行する前にコマンドを変更するのです。 代わりにbashでこのコマンドを実行することはできませんか。

#some_long_command1

というように、コメントされるようになります。

そうすれば、マウスを使ってコマンドをハイライトし、編集し、実行する必要がなくなります(キーボードを使えばいいのです、より速く)。

それをするためにスクリプトを書くことができると思いますが、すでにどこかに機能が組み込まれているかもしれませんね......?

どのように解決するのですか?

履歴コマンドを使う代わりに ctrl+r と入力し、そのコマンドを入力し始めます。修正に行くように矢印キーを押すと、オートコンプリートの認識から外れて、実行前に編集できるようになります。

UPDATE: また、入力した文字列を含むさまざまなコマンドを循環させたい場合は、引き続き ctrl+r