在 Linux 中,我可以输入echo "hello" >& text.output
并在文件中获取文本输出。
如何在 Windows 8 中获得这种输出?
有没有办法从输出中辨别错误?
tracert
我的动机是尝试记录Windows 8 和 Windows 7的输出并研究之间的差异。
答案1
与Linux下的方法相同:
echo "Hello" >text.output
错误通常会打印到stderr
流中(这是 #2)。您可以捕获stderr
流:
del 1.txt 2>text.output
如果该文件1.txt
不存在,text.output
将包含Could not find 1.txt
。
您可以重定向stdout
至stderr
:
echo "Hello" 2>&1
或者stderr
:stdout
echo "Hello" 1>&2
PS 我不确定你的命令是否能在 Linux 中工作。无论如何echo "hello" >& text.output
都会产生语法错误:>& was unexpected at this time.
答案2
Windows 中的 shell 现在与 Linux 上的 BASH 非常相似。因此,您只需执行
echo "Hello" > text.txt
或者,运行你的程序,并让系统输出写入text.txt
:
run_program > text.txt
如果需要跟踪错误,请使用以下命令:
run_program 2> error.txt
您可以在此处找到更多信息和示例。I/O 重定向