2009-05-09 22 views
16

Tôi làm việc ở một nơi có nhiều công cụ yêu cầu tấn tùy chọn, vì vậy tôi dựa vào lịch sử của vỏ của tôi một cách đáng kể. Tôi thậm chí còn sao lưu mọi thứ ngay bây giờ và sau đó chỉ để đảm bảo rằng tôi không mất các lệnh hữu ích, dài dòng.Làm cách nào để yêu cầu Zsh ghi lịch sử trình bao hiện tại vào tệp lịch sử của tôi?

Tôi vừa nhập một trong các lệnh này và tôi muốn đảm bảo rằng nó đã được chuyển sang tệp lịch sử, nhưng tôi có một công việc dài chạy ở chế độ nền và tôi không thể nhập exec zsh. Tôi có thể làm gì khác trong tình huống này không?

(Chắc chắn, tôi có thể sao chép và dán nó vào một tập tin, nhưng nó sẽ là hợp lý hơn vì có tồn tại một lệnh flush-history.)

Trả lời

25

Để viết lịch sử vỏ đến tập tin lịch sử, làm

fc -W 

fc có một số cờ hữu ích, xem tất cả chúng trong man zshbuiltins.

Bạn cũng có thể tự động hoàn toàn việc đọc và ghi tệp lịch sử sau mỗi lệnh (do đó chia sẻ tệp lịch sử của bạn tự động với mỗi zsh chạy) bằng cách nói setopt -o sharehistory. Đọc thêm các tùy chọn liên quan đến lịch sử trong man zshoptions.

+1

Hừ, hình như tôi không thể đọc một trang man. Cảm ơn! –

+0

Tài liệu: http://zsh.sourceforge.net/Doc/Release/Shell-Builtin-Commands.html#Shell-Builtin-Commands –

13

Tôi cũng chỉ tìm thấy:

setopt INC_APPEND_HISTORY 

Từ man zshoptions:

INC_APPEND_HISTORY 
    This options works like APPEND_HISTORY except that new history 
    lines are added to the $HISTFILE incrementally (as soon as they 
    are entered), rather than waiting until the shell exits. The 
    file will still be periodically re-written to trim it when the 
    number of lines grows 20% beyond the value specified by $SAVE- 
    HIST (see also the HIST_SAVE_BY_COPY option). 
11

Và sử dụng

fc -R 

để đọc trong lịch sử (sau khi viết nó) trong một vỏ zsh hiện .

0

appen dưới đường tới ~/zshrc, nó sẽ tiết kiệm được 1000 nhập chúng ta tăng bằng cách thay đổi giá trị của HISTSIZE và SAVEHIST

HISTSIZE=1000 
if ((! EUID)); then 
    HISTFILE=~/.zsh_history_root 
else 
    HISTFILE=~/.zsh_history 
fi 
SAVEHIST=1000 
Các vấn đề liên quan