bash
中执行以下操作的正确方法是什么:
[ -x /path/to/file ] || multiple_actions
其中multiple_actions
包括例如打印一些消息和exit 1
我试着这样做:
[ -x /path/to/file ] || echo Can't execute file; exit 1
它是有效的,但是我不确定这样做是否正确?可能存在一些潜在的隐藏错误?
你所尝试的并不能达到你想要的效果。它总是以状态1退出。使用if
命令:
if ! [ -x ... ]; then this; that; fi
或{}
复合命令:
[ -x ... ] || { this; that; }