我有成功的,它应该会失败,因为这样的`cat <does_not_exist | perl`成功
./preprocess.sh <PARTIAL_SOURCE | perl >FINAL_SOURCE
线成功,即使PARTIAL_SOURCE
尚不存在一个makefile。
这不是preprocess.sh
一个怪癖,它似乎有什么东西做在bash/sh的
$> cat <does_not_exist && echo ok || echo no
bash: does_not_exist: No such file or directory
no
$> cat <does_not_exist | perl && echo ok || echo no
bash: does_not_exist: No such file or directory
ok
为什么第一个失败,但第二成功吗?
是什么您的要求?你打算做什么? – Inian
当且仅当产生它的全部命令链成功时,要求'FINAL_SOURCE'被写入。 – spraff
您的要求其实很模糊。 'preprocess.sh'从'PARTIAL_SOURCE'中读取,并且只有在前一个命令成功的情况下,才将'perl'命令的输出管道输出到'FINAL_SOURCE'(不确定文件或变量)? – Inian