Tôi sử dụng vỏ bash mặc định trên hệ thống của mình và vì vậy có thể không hoạt động với các trình bao khác.
đây là những gì tôi có trong tập tin ~/.screenrc
của tôi vì vậy mà mỗi cửa sổ màn hình mới được lịch sử lệnh riêng của mình:
Mặc định màn hình của Windows Với riêng Lịch sử lệnh
Để mở một tập hợp các cửa sổ màn hình mặc định, mỗi với tập tin lịch sử lệnh riêng của họ, bạn có thể thêm dòng sau vào các ~/.screenrc
file:
screen -t "window 0" 0 bash -ic 'HISTFILE=~/.bash_history.${WINDOW} bash'
screen -t "window 1" 1 bash -ic 'HISTFILE=~/.bash_history.${WINDOW} bash'
screen -t "window 2" bash -ic 'HISTFILE=~/.bash_history.${WINDOW} bash'
Đảm bảo mới cho Windows Get riêng lịch sử chỉ huy của họ
Cài đặt màn hình mặc định có nghĩa là bạn tạo một cửa sổ mới bằng cách sử dụng Ctrl+a c
hoặc Ctrl+a Ctrl+c
. Tuy nhiên, với chỉ ở trên trong tệp ~/.screenrc
của bạn, các tệp này sẽ sử dụng tệp ~/.bash_history
mặc định. Để khắc phục điều này, chúng tôi sẽ ghi đè các ràng buộc chính để tạo cửa sổ mới.Thêm phần này vào tập tin ~/.screenrc
của bạn:
bind c screen bash -ic 'HISTFILE=~/.bash_history.${WINDOW} bash'
bind ^C screen bash -ic 'HISTFILE=~/.bash_history.${WINDOW} bash'
Bây giờ bất cứ khi nào bạn tạo ra một cửa sổ màn hình mới, nó thực sự tung ra một vỏ bash, thiết lập các biến môi trường HISTFILE
để cái gì đó bao gồm số cửa sổ màn hình hiện tại ($WINDOW
).
Tệp lịch sử lệnh sẽ được chia sẻ giữa các phiên màn hình với cùng số cửa sổ.
Viết lệnh để $HISTFILE
Thi hành
Như là hành vi bình thường bash, lịch sử chỉ được ghi vào tệp $HISTFILE
bởi lúc đi ra khỏi cửa sổ shell/màn hình. Tuy nhiên, nếu bạn muốn lệnh để được ghi vào tập tin lịch sử sau khi lệnh được thực thi, và do đó có sẵn ngay cho phiên màn hình khác với số lượng cùng một cửa sổ, bạn có thể thêm một cái gì đó như thế này để tập ~/.bashrc
của bạn:
export PROMPT_COMMAND="history -a; history -c; history -r; ${PROMPT_COMMAND}"
Nguồn
2014-02-12 02:48:32
Bạn có nghĩa là từ một cửa sổ khác trong cùng một phiên (hoặc có thể từ một phiên khác không)? Có thể. Nó sẽ liên quan đến phân tích cú pháp bộ đệm cuộn của cửa sổ đích. Tuy nhiên, tôi không đủ quen thuộc với màn hình để biết cách truy cập vào chương trình đó. Bạn có thể thử đọc trang người đàn ông để biết thông tin về cách thực hiện điều đó. – chepner