Linux mint では、次のコードを使用してクリップボードを監視しています。
last_clip = ''
try:
while True:
clip_contents = subprocess.check_output(['xclip', '-o'])
if clip_contents != last_clip:
#write clip_contents to file
time.sleep(0.5)
except KeyboardInterrupt:
print(" Quitting...")
頻繁にハングアップすることを除けば、うまく機能します。アクティブなプロセスであることを示しているcheck_output
ため、ライン上にあると確信しています。そして、それを殺すか、このトレースバックを取得すると:ps aux
xclip -o
-INT
-HUP
Traceback (most recent call last):
File "get.py", line 16, in <module>
clip_contents = subprocess.check_output(['xclip', '-o'])
File "/usr/lib/python2.7/subprocess.py", line 544, in check_output
raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command '['xclip', '-o']' returned non-zero exit status -1
私は何か間違ったことをしていますか、それともここで何かバグがありますか?