首先,是的。我确实阅读了有关此问题的几个问题,并且我确实理解逃跑应该是不必要的(我什至指定了shell=False
(。
我的问题是
subprocess.run(['tmux', '-n top', 'top', '; neww'])
导致 TMUX 会话打开并立即关闭
我正在尝试达到与执行相同的结果
tmux new -n top top ; neww
在外壳中。
我还尝试指定shell=True
并使用'\; neww'
以及r'; neww'
似乎也没有向 STDERR 写入任何内容。
每个参数都需要是单独的:
>>> import subprocess
>>> subprocess.run(['tmux', 'new', '-d', '-n', 'top', 'top', ';', 'neww'])
CompletedProcess(args=['tmux', 'new', '-d', '-n', 'top', 'top', ';', 'neww'], returncode=0)
>>>