windows cmd中两个python程序的差异输出

windows cmd中两个python程序的差异输出,python,diff,Python,Diff,因此,我尝试比较两个python程序的输出,其中包含我将调用的文件trace1.py和trace2.py。目前,我正在使用进程替换和diff来尝试和比较它们的输出,但是我在查找这两个文件时遇到了困难,因为它们位于我当前目录的单独子目录中: diff <(python /subdir1/tracing1.py) <(python /subdir2/tracing2.py) 我想我弄乱了某种路径格式,或者我错误地使用了进程替换 编辑:最后,我决定不需要使用进程替换,而是在每个程序运行后

因此,我尝试比较两个python程序的输出,其中包含我将调用的文件
trace1.py
trace2.py
。目前,我正在使用进程替换和diff来尝试和比较它们的输出,但是我在查找这两个文件时遇到了困难,因为它们位于我当前目录的单独子目录中:

diff <(python /subdir1/tracing1.py) <(python /subdir2/tracing2.py)
我想我弄乱了某种路径格式,或者我错误地使用了进程替换

编辑:最后,我决定不需要使用进程替换,而是在每个程序运行后,只需区分程序输出。然而,多亏了注释中的
fallereneaper
,我才能够找到一个命令来实现我最初想要的功能:

python subdir1/tracing1.py > outfile1.txt & python subdir2/tracing2.py > outfile2.txt & diff outfile1.txt outfile2.txt

抱歉,尚未有足够的代表发表评论:( 当你删除斜杠时,你的行运行得很好。我建议使用绝对路径名或当前目录中的相对路径,因为前斜杠会将你带到根目录


干杯。

您能粘贴您正在运行的确切命令吗?您的目录结构是什么样的?可能类似于:
python/path/tracing1.py&1>outfile1.txt&python/path/tracing2.py&1>outfile2.txt&diff outfile1.txt outfile2.txt
如果
subdir1
subdir2
是当前目录的子目录(而不是根级目录),您可能指的是
subdir1/tracing1.py
(不带前导斜杠)。@fallereneaper进程替换捕获到stdout和stderr的输出,请参见示例
diff&2)老实说,我甚至不需要一个接一个地运行这两个程序。所以我真的可以将输出重定向到两个单独的文件,然后再进行区分。我想我最终把事情复杂化了。我想我对错误的好奇让我想问一下。
python subdir1/tracing1.py > outfile1.txt & python subdir2/tracing2.py > outfile2.txt & diff outfile1.txt outfile2.txt