我有使用tcsh shell的makefile(我不建议这样做,但这是必需的)。我不希望它中断(如果a.txt
不存在),但是我希望它继续执行下一个命令。我该怎么做呢?
setup:
cp -rf a.txt b.txt; \
[other things that should be executed]
您可以使用类似:
([ -f a.txt ] && cp a.txt b.txt); ls
这将在C shell和Bourne shell中都适用
[ -f a.txt ]
使用test
(aka。[
)命令检查是否a.txt
存在。&&
是“与”操作符,如果只执行下一个命令(cp
)如果上面的命令([
)成功。(...)
)中以将其分组在一起,因此我们可以添加a;
并运行不受文件测试影响的更多命令。我们也可以使用C shell的内置功能if
,但是对于不熟悉csh的人(即大多数人)来说,这更便于携带和熟悉。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句