数年前、14.04から16.04に自動配布を更新しました。私の人生で初めて、自動配布の更新後もコンピューターを使い続けることができました。いつものように、ソフトウェアリポジトリはすべておしゃべりであるため、システムの更新は正しく機能しませんが、私はうまくいきました。
ただし、18.04のクリーンインストールを実行します。インストール後にシステムをより簡単に構成できるようにするために、コマンド履歴をテキストファイルにエクスポートしました。
$ history > /.../20180915_Command_history.txt
美しく、結果のテキストファイルには行番号が含まれています。少し不思議なことに、最初の行番号は76です。最初の数行を見てみると、おそらく以前のコマンドがいくつかあったようです。
まず、コマンドライン履歴のバックアップを取得する必要がある場合は、次のファイルをコピーします。
~/.bash_history
すべての端末を閉じるか、history -a
を実行して、これらの履歴セッションからのすべてのコマンドを履歴ファイルに追加する必要があることに注意してください。
そうでない場合、1行目から75行目を表示する方法はありますか?
履歴に保存されたすべてのコマンドは、~/.bash_history
ファイルで利用できます。すべてのコマンドは、ターミナルを開いて実行します:
cat ~/.bash_history
番号付けを実行してhistory
コマンドに類似した出力を取得するには:
cat -n ~/.bash_history
何らかの理由で行番号が76から始まるのでしょうか?
次のコマンドを実行します:
grep "^HIST" .bashrc
次のような出力を取得する必要があります。
HISTSIZE=1000
HISTFILESIZE=2000
前に言ったように、~/.bash_history
はコマンドラインの履歴を保持します。
HISTFILESIZE
は、~/.bash_history
が追跡するコマンドの数を示します。私の場合は2000です。
HISTSIZE
は、history
コマンド(実際にシェルに組み込まれている)が追跡するコマンドの数です。
端末を開いてhistory
を実行すると、~/.bash_history
から最後のHISTSIZE
個のコマンドが選択され、表示されます。
新しいコマンドを実行すると、セッションから古いコマンドが削除され、リストの最後に新しいコマンドが追加され、コマンドの数がHISTSIZE
と一致します。
.bash_history
にHISTSIZE
のコマンドが74個以上あるという質問をしているときに、75で始まる理由だと思います。
man bash
から:
HISTSIZE
コマンド履歴に記憶するコマンドの数。
HISTFILESIZE
履歴ファイルに含まれる行の最大数。