Tôi có thể tăng kích thước của lịch sử lệnh trong bash không?
Lưu ý rằng tôi sử dụng máy tính Red Hat Linux trong khoa vật lý thiên văn đại học ở đây (vì vậy tôi không nhận được nhiều đặc quyền đó).
Tôi có thể tăng kích thước của lịch sử lệnh trong bash không?
Lưu ý rằng tôi sử dụng máy tính Red Hat Linux trong khoa vật lý thiên văn đại học ở đây (vì vậy tôi không nhận được nhiều đặc quyền đó).
Câu trả lời:
Thay vì chỉ định số, bạn có thể làm
unset HISTSIZE
unset HISTFILESIZE
shopt -s histappend
trong trường hợp đó chỉ có kích thước đĩa của bạn (và "giới hạn tệp lớn nhất" của bạn, nếu HĐH hoặc FS của bạn có một) là giới hạn.
Tuy nhiên, hãy lưu ý rằng điều này cuối cùng sẽ làm chậm bash ngày càng nhiều. xem tài liệu BashFAQ này và bài báo quản trị debian (liên kết ban đầu đã chết, nhìn vào gương: archive.is và archive.org ) để biết các kỹ thuật có quy mô tốt hơn.
history-size
trong của bạn inputrc
.
.bash_history
lớn hơn những cái đó, sẽ cắt bớt nó.
Bạn có thể sử dụng logrotate để bảo tồn các mục cũ. Nó cho phép bạn, ví dụ, đặt giới hạn kích thước sẽ kích hoạt lưu trữ. Nó thường được chạy từ một cronjob hàng ngày, nhưng bạn cũng có thể gọi nó từ .bash_logout
kịch bản của mình .
@Philomath, bỏ cài đặt các vars môi trường đó không làm việc cho tôi cả! Đối với tôi, điều này khiến bash sử dụng các giá trị mặc định sẵn có của nó (có vẻ như) cắt ngắn .bash_history thành khoảng 9KiB.
Những gì làm việc cho tôi là sau đây trong .bashrc của tôi:
export HISTSIZE=
export HISTFILESIZE=
shopt -s histappend
15 Examples To Master Linux Command Line History