GNU/Linux >> Linux の 問題 >  >> Linux

なぜBashはスペースで始まるコマンドを保存しないのですか?

次のような一連のコマンドを実行した場合:

$ ls
$   grep abc file.txt

次に、上矢印キーを使用して前のcmdを取得すると、ターミナルに最後のcmd(grep)が表示されます。 ここ)

しかし、私がこのようなことをした場合:

$ ls
$   grep abc file.txt

ここで、grep 前にスペースがあり、上に押すとlsが表示されます 、grepではありません 。

なぜですか?

承認された回答:

echo $HISTCONTROL
ignoreboth

マンバッシュ:

HISTCONTROL

コマンドが履歴リストに保存される方法を制御する、コロンで区切られた値のリスト。値のリストにignorespaceが含まれている場合 、スペース文字で始まる行は履歴リストに保存されません。 ignoredupsの値 前の履歴エントリに一致する行は保存されません。 ignorebothの値 ignorespaceの省略形です およびignoredups


Linux
  1. 「#」または「;」で始まらない行をgrepする方法は?

  2. Grep-o-wでMacOsXで期待される出力が得られないのはなぜですか?

  3. 15 の便利な Bash シェル組み込みコマンド (例付き)

  1. ファイル名が Bash でアンダースコア _ で正しく印刷されない

  2. bashスクリプトにスペースを含むベース名?

  3. ショートサーキットコマンドのシーケンスで失敗した場合、bash がエラーで停止しないのはなぜですか?

  1. Bashの制御演算子と組み合わせたコマンド

  2. BASH を介してスペースをアンダースコアに置き換えます

  3. Docker コマンドがハングアップし、応答がありません