ln -s /var/log/$SERVICE_NAME $RPM_INSTALL_PREFIX/logs || :
在RPM规范文件,|| :
||是什么:在这一行的bash脚本从一个rpm spec文件做?
每行结束是什么|| :
的意义,它为什么存在?
ln -s /var/log/$SERVICE_NAME $RPM_INSTALL_PREFIX/logs || :
在RPM规范文件,|| :
||是什么:在这一行的bash脚本从一个rpm spec文件做?
每行结束是什么|| :
的意义,它为什么存在?
它会导致任何错误被忽略,以便rpm操作不会被取消。
||
导致下一个命令在上一个命令失败时运行,并且:
总是成功。
它吞下退出代码。
||
如果它之前的事情失败(即,具有非零退出代码),它会做它之后的事情。 :
是“无所事事”的命令。把它们放在一起......
`||` is OR operator. `:` means "do nothing".
你的声明说,“做软链接或者什么也不做”
它只是意味着OR。你可以尝试这样的小测试
ls nofile-here-like || echo 'Not here'
如果文件不存在,则会打印回显。尝试用现有的文件,也不会
我知道别人已经回答了,但我更愿意把:
command || /bin/true
恕我直言,这使得很多更明显的是谁读的bash旁边的人脚本/ spec文件。