.inputrc 與 .bashrc 設置
我注意到一些設置
.bashrc
和.inputrc
文件看起來相同或相似,例如:
shopt -s nocaseglob
對set completion-ignore-case
export HISTSIZE
對set history-size
export HISTFILESIZE
對set history-size
設置是否
.inputrc
也會影響 python shell 中的完成和歷史大小(如果在終端內執行)?
HISTSIZE
受限制history-size
還是覆蓋它?
從
bash
手冊:
history-size
(未設置)設置歷史列表中保存的最大歷史條目數。如果設置為零,則刪除任何現有的歷史條目並且不保存新條目。如果設置為小於零的值,則歷史條目的數量不受限制。預設情況下,歷史條目的數量設置為
HISTSIZE
shell 變數的值。如果嘗試設置history-size
為非數字值,則歷史條目的最大數量將設置為 500。所以如果你設置,
HISTSIZE
不要設置history-size
。.inputrc
readline 庫(為其.inputrc
配置)並不關心您設置HISTFILESIZE
的內容。 是當shell 會話退出時HISTFILESIZE
歷史文件 ($HISTFILE
) 被截斷的大小(通過,而不是通過 readline 庫)。bash``bash
根據問題“ Is there a way to set the size of the history list in bash to more than 5000 lines? ” ,如果兩者都設置
history-size
,readline庫的設置似乎會覆蓋HISTSIZE
shell中的設置。
nocaseglob
shell選項與completion-ignore-case
..inputrc
shell 選項與文件名通配行為有關,而 readline 設置與文件名完成有關(當您Tab
在命令行上按下時)。這些
.inputrc
設置會影響所有使用 readline 庫的程序,而不僅僅是bash
.
bash
可以在沒有readline 支持的情況下通過使用--noediting
標誌呼叫它來啟動。請注意,兩者
HISTSIZE
都是HISTFILESIZE
shell變數,而不是環境變數,因此不需要導出。