Có cách nào để đặt tên cụ thể cho phiên màn hình unix không? Chẳng hạn, giả sử tôi đang chạy cùng một chương trình nhiều lần, mỗi lần có các tham số khác nhau và tôi muốn biết đó là chương trình nào.
Có cách nào để đặt tên cụ thể cho phiên màn hình unix không? Chẳng hạn, giả sử tôi đang chạy cùng một chương trình nhiều lần, mỗi lần có các tham số khác nhau và tôi muốn biết đó là chương trình nào.
Câu trả lời:
Bạn có thể đặt tên một phiên khi bắt đầu nó với -S name
tùy chọn. Từ trong màn hình đang chạy, bạn có thể thay đổi nó bằng cách gõ CTRL-a, :sessionname name
. Bạn có thể xem các phiên màn hình đang chạy screen -ls
và kết nối với một tên bằng screen -xS name
.
Trong một phiên màn hình duy nhất, bạn cũng có thể đặt tên cho mỗi cửa sổ. Làm điều này bằng cách gõ CTRL-a, A
sau đó tên bạn muốn. Bạn có thể xem danh sách tương tác của các cửa sổ được đặt tên bằng cách nhập CTRL-a, "
và chọn một cửa sổ bạn muốn chuyển từ danh sách đó.
Đặt tên cho cả màn hình và thiết bị đầu cuối trong màn hình thực sự hữu ích để ghi nhớ chúng là gì và tại sao bạn bắt đầu chúng ở nơi đầu tiên.
:sessionname NEWNAME
), nhưng nó "thường không được khuyến khích". Biến $STY
môi trường vẫn đề cập đến tên gốc. Xem screen
hướng dẫn: gnu.org/software/screen/manual/html_node/Session-Name.html
Có hai khái niệm ở đây và tôi không chắc bạn có ý tưởng nào:
C-a c
tạo một cửa sổ C-a n
và C-a p
chuyển sang cửa sổ tiếp theo / trước, v.v.-r
hoặc -R
) tạo ra một phiên mới.Windows có các tiêu đề, có thể được đặt thông qua -t
tùy chọn dòng lệnh, C-a A
ràng buộc phím, title
lệnh hoặc \ek
chuỗi thoát. Xem câu trả lời của shellter để biết thêm chi tiết.
Phiên có thể có tên. Bạn thường đặt tên trên dòng lệnh với -S
tùy chọn; nếu bạn không chỉ định tên, màn hình sẽ tạo một tên. Nếu bạn sử dụng nhiều phiên màn hình, thông thường bạn sẽ đặt cho chúng các tên phiên khác nhau. Bạn có thể liệt kê phiên màn hình đang chạy với screen -ls
; từ đầu tiên trên mỗi dòng phiên là 12345.sessionname
12345 là ID tiến trình màn hình. Sử dụng screen -r sessionname
hoặc screen -r 12345
để tiếp tục một phiên được chỉ định thông qua tên hoặc ID tiến trình của nó.
À ... Màn hình, nó đưa tôi trở lại ;-)
Cho một cửa sổ
-t name
sets the title (a.k.a.) for the default shell or specified program.
See also the "shelltitle" .screenrc command.
Đối với các phiên đột biến bắt đầu từ .screenrc của bạn
screen -t top 2 nice top
screen -t ....
Đây là một liên kết đến một bản sao trực tuyến của trang man cho màn hình.
Chỉnh sửa: đã thêm
Để thay đổi tên màn hình hiện tại, hãy tạo một công cụ kịch bản shell như
cat scrnTitle.sh
#/bin/bash
echo -ne '\ek${0}\e\\'
Chưa được kiểm tra, tôi không có sẵn màn hình trên hệ thống tôi đang làm việc.
screen
ít nhất 25 năm. Đưa tôi trở lại, bởi vì bây giờ nó là một trường hợp sử dụng đặc biệt sẽ đưa tôi đến screen
. Thông thường tôi chỉ tiếp tục mở X-Terms
, nhưng tôi nhớ khi dường như không thể chạy X
trên PC 486 ;-) Chúc mừng!
Các câu trả lời ở trên đã cho bạn biết cách đặt tên cho màn hình khi bạn khởi động nó. Họ cũng chỉ ra rằng một màn hình không thể được đổi tên sau khi màn hình được bắt đầu. Tiêu đề cửa sổ có thể được đặt nhưng tên được sử dụng để gắn vào màn hình vẫn là pid.pty.host.
Tuy nhiên, để đạt được hiệu quả hữu ích, tôi thấy rằng sử dụng bí danh hoạt động khá tốt. Nếu tôi quên đặt tên cho một màn hình hoặc thấy mình trong một phiên có một loạt các màn hình trở thành màn hình tự nhiên cho các tác vụ cụ thể, tôi chỉ cần đặt bí danh cho lệnh để đính kèm với chúng.
thí dụ:
alias goncompile='screen -r 2354'
Việc ban hành lệnh bí danh sẽ tự nhắc nhở bạn những màn hình nào bạn có và lệnh bạn đã đặt để gắn vào chúng.
Sử dụng unalias
để loại bỏ chúng.