我试图使用ifort -v
命令提取Fortran编译器的版本,然后grep它检查版本。使用BSD grep捕获stdout(可能)grep
但是这不起作用。
%ifort -v
ifort version 16.0.1
%ifort -v | grep "version"
ifort version 16.0.1
%ifort -v | grep "xyz"
ifort version 16.0.1
看起来好像输出是打印出来的,不管我的模式如何。所以为了测试它,我尝试了下面的重定向到null,它仍然打印。它似乎喜欢输出不会到标准输出。
%ifort -v > /dev/null
ifort version 16.0.1
%ifort -v 2>/dev/null
ifort: error #10236: file not found: '2'
ifort version 16.0.1
是否有可能,我在外壳看到的信息实际上是由于执行ifort指令以不同的工艺比目前的笔试和那我无法捕捉到它的原因是什么? 我怎样才能捕捉到这个和grep呢?
你可以试试ifort -v 2>/dev/null吗? – Michal
编辑为包含重定向stderr。似乎ifort有不同的执行命令的方式。 –
你的shell是什么?你可以执行echo $ 0 – Michal