【发布时间】:2021-12-21 12:00:06
【问题描述】:
我有一个 C 文件说,myfile.c。
现在编译我正在做的:gcc myfile.c -o myfile
所以现在我需要运行这个:./myfile inputFileName > outputFileName
inputFileName 和 outputFileName 是 2 个命令行输入。
现在我正在尝试在 python 程序中执行此操作,并且正在尝试以下方法,但它无法正常工作可能是由于 >
import subprocess
import sys
inputFileName = sys.argv[1];
outputFileName = sys.argv[2];
subprocess.run(['/home/dev/Desktop/myfile', inputFileName, outputFileName])
其中/home/dev/Desktop 是我的目录的名称,myfile 是可执行文件的名称。
我该怎么办?
【问题讨论】:
-
您应该能够直接从 python 中将 C 文件作为模块运行。请提出look at this stackoverflow 问题,该问题可能导致Python documentation。
-
作者是否在他们的子进程命令中遗漏了“>”?
-
> outputFileName是输出重定向。这是你的 shell 正在做的事情——它不是你的程序的参数。要使用 python 重现它,请查看 stackoverflow.com/questions/4965159/…
标签: python command-line executable