我有一个包含一些Python脚本的目录。 在这个目录中,有一些子目录,形式为 "a/b/c1"、"a/b/c2"、...、"a/b/cn "等。 这些目录中的每一个都是一个npm包,其中的
package.json
文件中的一个脚本名为
my_script
。
在装有我的Python脚本的目录中,我可以从终端运行以下命令,很好。
npm run my_script --prefix a/b/c1
然而,在我的Python脚本中,我做的事情大致如下。
bashCmd = ['npm', 'run', 'my_script', '--prefix', 'a/b/c1']
process = subprocess.Popen(bashCmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
output, error = process.communicate()
print(output)
print(error)
替换代码4】的结果是来自npm的消息,告诉你关于传递给它的参数的指示。
Usage: npm <command>
where <command> is one of:
access, adduser, audit, bin, bugs, c, cache, ci, cit,...
据我所知,我正在运行同一组指令,一个来自Python,一个来自npm,但得到的结果不同。
谁能帮我解释一下这个问题?