gpt4 book ai didi

带参数的 python 子进程 popen

转载 作者:太空宇宙 更新时间:2023-11-03 17:27:14 25 4
gpt4 key购买 nike

我正在为 svn 编写一个预提交 Hook ,我必须运行“svnlook log”命令,捕获并解析其输出。

我现在陷入困境:

svnlookCmd = ['/appl/atlad00/CollabNetSubversionEdge-5.0.1/csvn/bin/svnlook', 'log', repoPath, '-t ', transID]
sys.stderr.write('svnlookCom = ' + str(svnlookCmd) + '\n')
svnlook = Popen(svnlookCmd, stdout=PIPE)
commitMsg = svnlook.stdout.read()
sys.stderr.write ("\n commit message is: : \n" + commitMsg + "\n")

这将运行 svnlook 但提示 svnlook 本身会提示“给定的参数太多”,如果你检查 svnlook 帮助,这不是真的。

所以我想我必须将“svnlook log”像这样放在一起:

['/appl/atlad00/CollabNetSubversionEdge-5.0.1/csvn/bin/svnlook log', repoPath, '-t ', transID]

但这不会运行 svn 看所有给我的:

"OSError: [Errno 2] No such file or directory".

其意义在于:

'/appl/atlad00/CollabNetSubversionEdge-5.0.1/csvn/bin/svnlook log' does not exists.

知道我在这里缺少什么吗?值得一提的是,自从我使用 python 以来已经很长时间了,所以我可能会错过一些非常基本的东西......

S.

最佳答案

发现问题:

这是 -t 选项中的空格:

'-t '

应该是

 '-t'

关于带参数的 python 子进程 popen,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32395741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com