次のPythonスクリプトがありますchmod +x
。コマンドラインからこのスクリプトを実行してもPuttyがまだ起動していない場合は、Puttyが起動します。
#!/usr/bin/env python
from __future__ import print_function
import shlex
import subprocess
output = subprocess.check_output(['ps', 'aux'])
found = False
for line in output.split('\n'):
if line.endswith('putty -load test'):
found = True
break
if not found:
print("Starting Putty")
subprocess.Popen(['putty',
'-load',
'test'])
else:
print("Putty going strong")
しかし、私Puttyを起動しないでください。これにより、「Starting Putty」というメッセージが引き続き表示されます(ログ用にファイルとして指定しました)。
私のもの推測するはい、ディスプレイに関連していますが、問題を解決する方法、または私が探しているものが何であるかわかりません。
答え1
必要なことがわかりましたディスプレイ設定。
* * * * * env DISPLAY=:0 /home/wayne/.bin/run_putty
またはモニターが複数ある場合
* * * * * env DISPLAY=:0.0 /home/wayne/.bin/run_putty
これで毎分確認/実行されます。