Ctrl + Cを使用して現在の行を消去した後に履歴からコマンドを取得する方法

Ctrl + Cを使用して現在の行を消去した後に履歴からコマンドを取得する方法

特定のコマンドを入力すると、通常は別のコマンドを実行する必要があります。一度はビデオで^ Cを押してから、履歴からコマンドを検索するのを見たことがあります。

回答ここ(2番目の段落)また、私が探している正確な動作について説明します。しかし、どのように機能するかは言いません。

引用回答 ->

または、CTRL+を押すと、入れ子になったコマンド(whileやforループなど)がある場合に特に便利です。Cこれにより、コマンドを実行せずに履歴にコマンドを追加し、シェルの履歴を使用できるように行を消去します。使用する準備ができました。

Ctrl+UまたはCtrl+Kの後にCtrl+を使用できることを知っていますが、Yこの特定の解決策を探しています。

私は次のソースをすべて見ました。

https://superuser.com/questions/563939/save-command-to-history-without-executing-in-bash
入力したコマンドを実行せずに保存する方法は?
何かを確認するときに半分だけ入力されたコマンドを覚えておいてください
https://stackoverflow.com/questions/35807653/how-do-i-add-a-command-to-bash-history-without-executing-it
https://superuser.com/questions/555310/bash-save-history-without-exit
現在のコマンドをキャンセルしますが、履歴に保存
現在のコマンドの途中でサブシェルを実行する
部分的に作成したコマンドに戻る

ベストアンサー1

Ctrl-Cシェルは通常、履歴に-cancelledコマンドを入力しません。

GNU Bash または GNU Readline ドキュメントで、キャンセルされたコマンドを履歴に入れる動作を有効にする方法についての情報が見つかりません。

コマンドの入力中に他のコマンドを最初に実行する必要があることがわかったら、その行の先頭に移動してを使用してコマンドをコメントアウトします#。次にEnterを押して送信します。コメントラインはい後で覚えておくために履歴に入れてコメント文字を削除してから作業を続けます。

おすすめ記事