繁体   English   中英

如何在 Python 中通过 rstrip 和 sed 命令使用 Sybprocess.call

[英]How to use Sybprocess.call with rstrip and sed command in Python

shell=False与子进程调用时我收到错误但是当shell=True时它正在工作。

String = "geeks"
CriticalCmd = "/bin/sed -i /^cu\\:/c\\ '%s' a" %String.rstrip('s')
subprocess.call((replaceHashCmd),shell=False)

这可能是因为您使用一个字符串的元组而不是字符串列表(作为 shell 的参数)调用subprocess.call

更改: subprocess.call((replaceHashCmd),shell=False)

到: subprocess.call(replaceHashCmd.split(' '),shell=False)

.split允许我将字符串剪切成我传递给命令行的参数,就像这样做: 'ls -l'.split() # ['ls', '-l']这是你传递的所有参数到命令行

考虑阅读这篇文章:链接

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM