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

履歴に保存せずにシェルでコマンドを実行するにはどうすればよいですか? [Linuxのヒント]

そうですね、これをその日のLinuxのヒントと呼んでもかまいません。シェルプロンプトでコマンドを実行し、コマンド履歴に保存しないようにするためのヒントを紹介します。通常、シェルで実行するコマンドはすべて、コマンド履歴と「履歴」に保存されます。 ‘コマンドは、過去に実行したコマンドのリストを表示します。それはとても便利です。しかし、コマンドを実行してから、コマンドがコマンド履歴に保存されないようにするにはどうすればよいでしょうか。

回答:

で始まるコマンドを実行する コマンド履歴には保存されません。

例:

#<space> hostname

上記のコマンドはマシンのホスト名を表示しますが、コマンド自体はコマンド履歴に保存されません。

ただし、待ってください。HISTORYを制御する必要があります( HISTCONTROL 環境変数)。 HISTCONTROLで設定されている内容を確認します 以下のように:

#echo $HISTCONTROL

次に、 HISTCONTROLを設定します 以下のように:

#export HISTCONTROL=ignorespace

または、上記の行を$ HOME/.bashrcに追加することもできます。

# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
 . /etc/bashrc
fi
# User specific aliases and functions
export HISTCONTROL=ignorespace

上記のコマンドは、スペースを無視するようにコマンド履歴を制御します。そのため、コマンドを先頭にスペースを入れて実行すると、履歴に保存されません。


Linux
  1. Linuxでhistoryコマンドを使用する方法

  2. 確認なしでcpコマンドを強制的に上書きする方法

  3. LinuxでBashの履歴をクリアする方法

  1. シェルで .sh 拡張子のないファイルを実行する方法

  2. パスワードなしでsshコマンドをsudoコマンドをリモートで実行する方法

  3. コマンド履歴から特定のコマンドを実行せずに呼び出す方法

  1. Linuxのコマンド履歴を管理する方法

  2. コマンドを履歴に残さずに実行する

  3. laravelコントローラーから外部シェルコマンドを実行するには?