コマンドを実行せずにbash履歴に保存する方法はありますか?例えば
$ cmd [a long list of arguments]
そして今、タイピング中に私は最初に何か他のことをしたいと思います。次のようなものはありますか
$ cmd [a long list of arguments][some-key-strokes]
これは実際には実行されませんが、後で使用できるようにbashの履歴に入りますか?
コマンドを実行せずにbash履歴に保存する方法はありますか?例えば
$ cmd [a long list of arguments]
そして今、タイピング中に私は最初に何か他のことをしたいと思います。次のようなものはありますか
$ cmd [a long list of arguments][some-key-strokes]
これは実際には実行されませんが、後で使用できるようにbashの履歴に入りますか?
回答:
通常は、行の先頭に#を追加して、行をコメントに変換します。
#cmd [a long list of arguments]
たった3 [SHIFTを押して#を挿入する必要がある場合は4]キーストロークで実行できるので、この方法を好みます。
^a#<ENTER>
^ aは現在の行の先頭に移動します
#コメントを追加
ENTERはコメントを実行します
その場合は、行の先頭に#を付けて、Enterキーを押します。
...またはキーコンボを使用: ESC #
bind -p | grep -i 'insert-comment' # "\e#": insert-comment
次の行を使用してみてください:
history -s -p $COMMAND
からhelp
:
The -p option means to perform
history expansion on each ARG and display the result,
つまり!!
、のようなものを拡張し、結果を履歴の一番下に保存できます。
私が望む「いくつかのキーストローク」は、Ctrl-UとCtr-Yで、キルリングにラインを格納し、後でそれをヤンクバックすると思います。それは歴史には入っていないが、あなたがしなかったので、それはそうすべきではないと思う。
私はこの数年前に学びましたが、忘れてしまい、それらのキーストロークも探していました。
ここでも説明されています:https : //unix.stackexchange.com/questions/140741/how-to-save-a-command-you-entered-without-executing-it
#
、Enterキーを押します。