pexpect需要在不启动bashshell的情况下使用管道,因为bashshell不理解该命令

2024-09-20 22:21:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用pexpect做一些类似的事情

echild = pexpect.spawn('/bin/bash -c "sysinfo -v | grep "SCM"')
fout = file('/home/kiva/release_file.txt' , 'w+')
child.logfile = fout

问题是我想把这个命令的out放到一个textfile中,但是我必须启动一个shell,因为我们不能在spawn()中使用管道。bashshell不理解sysinfo-v并对此进行了抱怨。在

你们有什么想法或者知道一种方法,我可以在不打开bash终端的情况下将所需的输出输入到文件中吗?我可以通过使用spawn()方法来解决这个问题,而不需要重新映射它,但是我需要精确的匹配,因此grep是必需的。在

谢谢你


Tags: 方法bashhomereleasebinscm事情grep

热门问题