这个
import pexpect
def run(cmd, stdin):
child = pexpect.spawn(cmd, encoding='utf-8')
child.send(stdin)
child.sendeof()
run('xclip -selection clipboard', 'lol')
应该将字符串复制lol
到我的剪贴板中,以便我将它粘贴到Ctrl+周围v。
但是,相反,我得到了echo -n '' | xclip -selection clipboard
将空文件作为 STDIN 传递到xclip
.
为什么?
更新
这将打印lollxl
而不是仅打印lxl
:
import pexpect
def run(cmd, stdin):
child = pexpect.spawn(cmd, encoding='utf-8')
child.send(stdin)
child.sendeof()
child.sendeof()
x = child.read()
child.wait()
return x
x = run("sed --expression='s/o/x/g'", 'lol')
print(x)