Làm thế nào để thiết lập số lượng lịch sử lệnh thu hồi


15

Tôi đang sử dụng bash. Để duyệt lịch sử lệnh của tôi, tôi đang gọi historylệnh mà tôi tin là đang gọi chương trình Gnu cùng tên. (Tôi không biết nếu có cách bash cụ thể tốt hơn).

Trong .bashrc của tôi, tôi hiện có một dòng export PROMPT_COMMAND='history -a'để lưu giữ lịch sử từ nhiều phiên bash tôi đang chạy.

Nếu tôi làm lịch sử hiện tại tôi chỉ thấy 524 mục. Đây có phải là cấu hình? Tôi muốn tăng số này lên con số lớn hơn nhiều vào năm 2000.

Câu trả lời:


19

Trước hết, history cách cụ thể bash, không tốt hơn. Các historylệnh là một dựng sẵn bash như bạn có thể nhìn thấy bằng cách chạy

$ type history 
history is a shell builtin

Bây giờ, số lượng lệnh mà nó nhớ được điều khiển bởi HISTSIZEbiến. Để đặt nó thành một số lớn hơn, hãy thêm dòng này vào .profile(vì lý do tại sao đây là nơi tốt hơn cho nó hơn .bashrc, xem tại đây ):

export HISTSIZE=2000

Từ giờ trở đi, historysẽ trả về 2000 lệnh cuối cùng bạn đã chạy.


5

Vâng, man bashnói:

HISTSIZE - Số lượng lệnh cần nhớ trong lịch sử lệnh

Nhưng có một Readlinebiến số:history-size

Đặt số lượng mục lịch sử tối đa được lưu trong danh sách lịch sử. Nếu được đặt thành 0, mọi mục nhập lịch sử hiện tại sẽ bị xóa và không có mục mới nào được lưu. Nếu được đặt thành giá trị nhỏ hơn 0, số lượng mục lịch sử không bị giới hạn. Theo mặc định, số lượng mục lịch sử không bị giới hạn.

Bạn có thể đặt history-sizevới HISTSIZE=1000, bind 'set history-size 1000'hoặc với dòng sau trong của bạn ~/.inputrc:set history-size 1000

Ví dụ :

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-sizecó sẵn từ bash-4.0-alpha: THAY ĐỔI


2

Các HISTSIZEmệnh lệnh biến có bao nhiêu lệnh được lưu giữ trong lịch sử hoạt động và HISTFILESIZExác định có bao nhiêu lệnh từ lịch sử chạy được lưu khi thoát vỏ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.