我有一个非常简单的程序,可以输出args
的内容。
例如,如果我使用
$ java main test
它输出
> test
现在,我也希望它也可以与文件一起使用,因此我创建了文件echo test > file1
。如果我做cat < file1
,我将得到正确的结果。
如果我愿意
$ java main < file1
我得到
>
(空行)
为什么会这样?
答案 0 :(得分:1)
<
-告诉您的命令将文件用作stdin,与命令参数无关。
如果要附加其他参数,请使用xargs
:cat file1 | xargs java main
,或者使用-a
标志:xargs -a file1 java main