2012-11-10 60 views
7

Làm cách nào để lấy tiêu đề của phiên screen từ dòng lệnh?Cách lấy tiêu đề màn hình Linux từ dòng lệnh

+7

Chào mừng bạn đến với StackOverflow, Kristian. Để phù hợp với cấu trúc của trang web, vui lòng diễn giải lại vấn đề dưới dạng câu hỏi và sau đó đăng giải pháp của bạn bên dưới. – unutbu

+1

Tôi đã chỉnh sửa bài đăng của bạn cho bạn. Cắt bỏ mọi thứ bên dưới đường ngang và dán nó vào một câu trả lời trong hộp bên dưới. – Eric

+1

cũng, vui lòng xóa thẻ "linux" và văn bản. Đây không phải là đặc trưng cho Linux –

Trả lời

1

Tôi đã đưa ra một tập lệnh python rất nhỏ và đơn giản với pexpect để thực hiện.

Rất tiện dụng trong môi trường nhiều người dùng, nơi một số máy chủ được giữ lại và trạng thái được ghi vào tiêu đề màn hình của người dùng. Nó làm việc cho tôi, cảm thấy tự do để làm cho nó tốt hơn. Để tìm tiêu đề phiên cụ thể, bạn cần phải sửa đổi tập lệnh và gọi cho phiên chính xác.

Nếu bạn chạy điều này thông qua kết nối từ xa như tập lệnh cục bộ (thông qua SSH chẳng hạn), hãy nhớ đặt export TERM=xterm trước khi thực thi.

try: 
    import pexpect 
    import sys 
    child=pexpect.spawn('screen -x') 
    child.sendcontrol('a'); 
    child.send('A'); 
    i = child.expect('Set window.*') 
    child.sendcontrol('c'); 
    child.sendcontrol('a'); 
    child.send('d'); 
    TITLE=str(child.after) 
    TITLE_P=TITLE.split('7m') 
    if str(TITLE_P[-1]) == '': 
     print 'Title not found' 
    else: 
     print str(TITLE_P[-1]) 
except: 
    print 'Could not check screen Title' 
Các vấn đề liên quan