写一个命令
- 从以下来源提供应用程序数据
input.dat
- 将输出保存到
output.dat
- 将错误消息保存到
log.txt
我对 Unix 很陌生,想知道我是否正确使用了命令行参数。
我写的命令是:
$> app < input.dat > output.dat > 2> log.txt
据我了解,<
读取文件作为标准输入。>
将文件设置为从标准输出重定向,并将2>
错误消息重定向到文件。
想知道我的命令是否正确,如果不正确,想知道是否有人可以帮我解决这个问题。
答案1
根据应用程序处理其输入的方式并假设输入数据格式正确,您可以执行类似的操作cat input.dat | app > output.dat 2> log.txt
。输入是解决大部分问题的部分,这实际上取决于应用程序期望如何接收其输入,即。换行符分隔,制表符分隔等..
您还可以使用您最初尝试的语法。
app < input.dat > output.dat 2> log.txt
但我个人认为该cat
方法在Linux中更通用且更常用。