私は成功せずにHISTSIZEシステム全体を変更しようとしてきました。私はさまざまなアプローチを試しました。
/etc/profile
エクスポート HISTSIZE=100 追加/etc/enviroment
HISTSIZE=100 追加/etc/bash.bashrc
HISTSIZE=100 追加
各ユーザーのファイルを変更したくありません.bashrc
。
答え1
長すぎます。 HISTSIZEが変わる場所を確認してください。
grep HISTSIZE /etc/profile /etc/bash.bashrc ~/.profile ~/.bash_profile ~/.bash_login
HISTSIZEは単に環境変数であり、環境変数はさまざまな場所で設定または上書きされます。私はあなたがbashを使用していると仮定します(他のシェルはHISTSIZEを使用すると確信していますが、bashは通常デフォルトのシェルです)
bash/bind.cに見られるように、デフォルトのHISTSIZEは500です。https://github.com/bminor/bash/blob/d233b485e83c3a784b803fb894280773f16f2deb/lib/readline/bind.c#L2040
ユーザーがログインすると、かなり複雑なプロファイルツリーがロードされます。これに関する素晴らしい投稿は次のとおりです。https://blog.flowblok.id.au/2013-02/shell-startup-scripts.html
これで、一般的な対話型リモート(紫色の線)シェルを実行すると、次のファイルが解析されることがわかります。
- /etc/設定ファイル
- /etc/bash.bashrc
- ~/.プロフィール
- ~/.bash_profile
- ~/.bash_login
これらのファイルはすべてHISTSIZE変数を設定または変更できます。
これで、次のように入力して現在のHISTSIZE変数を読み取ることができます。echo $HISTSIZE
結果が空の行の場合は設定されていないことを意味し、デフォルト値の500を適用する必要があります。
その他の金額は上記のリストの他のスクリプトによって設定されます。次のようにHISTSIZEをgrepingしてすばやく確認できます。
grep HISTSIZE /etc/profile /etc/bash.bashrc ~/.profile ~/.bash_profile ~/.bash_login