私は.bash_history
ホームディレクトリから話をしていません。通常、sudo -i
or を使用してからsudo su
、rootユーザーとしてコマンドを実行します。
これらのコマンドの後、履歴は.bash_history
私のホームディレクトリからファイルに保存されないので、この履歴がどこかに保存されているかどうか、そしてはい、どこに保存されているか知りたいです。
私は.bash_history
ホームディレクトリから話をしていません。通常、sudo -i
or を使用してからsudo su
、rootユーザーとしてコマンドを実行します。
これらのコマンドの後、履歴は.bash_history
私のホームディレクトリからファイルに保存されないので、この履歴がどこかに保存されているかどうか、そしてはい、どこに保存されているか知りたいです。
回答:
さて、rootとしてログインすると、bash履歴は/root/.bash_history
ファイルに保存されます。このファイル/root
は、rootユーザーのデフォルトのホームディレクトリです。これを証明するには、rootとしてログインしているときに次のコマンドを実行します。
echo $HISTFILE
$HISTFILE
履歴を含むファイルへの変数のポイント。ソース:
$HISTFILE
通常、別のユーザーアカウントにログインすると、bash履歴は.bash_history
そのユーザーのホームディレクトリにあるというファイルに保存されます。
さらに、ルートユーザーのbash履歴を別のファイルに保存する場合は、たとえば.bash_history
ホームディレクトリの/root/.bashrc
ファイルにファイルを編集し、ファイルの最後に次の内容の新しい行を追加する必要があります。
HISTFILE="/home/username/.bash_history" #change username with your user name
私は、そのユーザーに対して最後に使用したコマンドを表示するキーボードのアップキーを介してショートカットリストを使用することに慣れています。rootとしてログインすると、rootユーザーの履歴が表示されます。
このようにテストsudo -i
し、パスワードを入力してから、キーボードのアップキーを押します。ここで、最後に使用したコマンドを最近から古い順にスクロールします。
RaduRădeanuの答えがあなたが望んでいたことだと思います。しかし、これは目前の問題も解決します。私の解決策は、時間と手間を節約できる古いコマンドを覚える便利な方法です。
タイピングhistory
の歴史の中ですべてのコマンドは、シェル・リストに。次のコマンドを使用して、履歴を別のファイルに保存できます。
history > *textfile*