#!/bin/bash
./program < input.txt > output.txt
> output.txt
部分被忽略,因此输出.txt最终为空。
这适用于sort
命令,因此我希望也适用于其他程序。
有什么原因不起作用吗?我应该如何实现这一点?
最可能的解释是你看到的输出来自 stderr
,而不是stdout
。 要将它们都重定向到一个文件,请执行以下操作:
./program < input.txt > output.txt 2>&1
或
./program < input.txt &> output.txt