コマンド履歴の呼び出し回数を設定する方法

コマンド履歴の呼び出し回数を設定する方法

バッシュを使っています。私はコマンド履歴を取得するためにhistory同じ名前のGnuプログラムを呼び出すと思われるコマンドを呼び出しています。 (より良いbash特定の方法があるかどうかわかりません)。

私の.bashrcには、現在export PROMPT_COMMAND='history -a'実行中の複数のbashセッションの履歴を保持する行があります。

記録を見ると、これまでに524個の項目しか表示できません。これは設定可能ですか? 2000のように大きい数に増やしたいです。

答え1

まず、history はいbash 特定の方法、より良いものはありません。このhistoryコマンドは組み込みの bash で、次のコマンドを実行して表示できます。

$ type history 
history is a shell builtin

今覚えているコマンドの数はHISTSIZE変数によって制御されます。より大きな数字に設定するには、この行.profile.bashrcここ):

export HISTSIZE=2000

これからhistory最後に実行した2000個のコマンドが返されます。

答え2

このHISTSIZE変数は実行履歴に格納されるコマンドの数を示し、HISTFILESIZEシェル終了後に実行履歴に保存されるコマンドの数を決定します。

答え3

はいman bash、言う:

HISTSIZE - コマンド履歴に記憶するコマンドの数

しかし、s変数がありますReadlinehistory-size

履歴リストに保存される履歴履歴の最大数を設定します。 0 に設定すると、既存の履歴項目は削除され、新しい項目は保存されません。 0より小さい値に設定すると、履歴項目の数に制限はありません。デフォルトでは、履歴レコードの数に制限はありません。

またはで、次の行をhistory-size使用してこれを設定できます。HISTSIZE=1000bind 'set history-size 1000'~/.inputrcset history-size 1000

はい:

HISTSIZE=1000
bind 'set history-size 0'
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 0
history # prints nothing

bind 'set history-size 0'
HISTSIZE=1000
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 1000
history # prints    13  echo $HISTSIZE\n14  bind -v | grep history-size\n15  history

history-size利用可能時間bash-4.0-alpha:多様性

答え4

For more information, I am adding it. I used ubuntu 18. This worked for me.
$ echo $HISTSIZE
1000
$ echo $HISTFILESIZE
1000
$ echo $HISTFILE

vi /home/siva/.bashrc  # here we need to update the HISTSIZE variable to the required thing.
NOTE: open new terminal and check updated value will bere printed if you run $ echo $HISTSIZE

Reference Link:
https://www.redhat.com/sysadmin/history-command

関連情報