7

screenコマンドラインからセッションのタイトルを取得するにはどうすればよいですか?

4

1 に答える 1

1

それを行うための非常に小さくてシンプルな python スクリプトを思いつきましたpexpect

一部のホストが予約されていて、ステータスがユーザーによって画面タイトルに書き込まれるマルチユーザー環境で便利です。それは私にとってはうまくいきます。自由に改善してください。特定のセッション タイトルを取得するには、スクリプトを変更して正しいセッションを呼び出す必要があります。

これをローカル スクリプトとしてリモート接続 (SSH など) で実行する場合は、export TERM=xterm実行前に忘れずに設定してください。

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'
于 2012-11-13T18:09:03.387 に答える