This question already has answers here:
Java read file by command line, <(less than) symbol
                            
                                (4个答案)
                            
                    
                2年前关闭。
        

    

我有一个非常简单的程序,可以输出args的内容。
例如,如果我用

$ java main test
它输出

> test


现在,我也希望它也可以与文件一起使用,因此我创建了文件echo test > file1。如果我执行cat < file1,我将得到正确的结果。

但是如果我这样做

$ java main < file1我明白了

>


(空行)

为什么会这样呢?

最佳答案

<-告诉您的命令将文件用作stdin,与命令参数无关。

如果要附加其他参数,请使用xargscat file1 | xargs java main,或者使用-a标志:xargs -a file1 java main

10-04 12:40
查看更多