我已经完成了Ruby的所有学习,现在正在深入研究OpenShift的Bash脚本深度。每个命令的作用都不太明显......
有人可以向我解释以下内容:
[ -f ${OPENSHIFT_DATA_DIR}redis.pid ] || ${OPENSHIFT_DATA_DIR}redis/bin/redis-server ${OPENSHIFT_DATA_DIR}redis/bin/redis.conf
第二部分显然是使用redis-server
配置运行redis.conf
二进制文件。但是我不确定||
完成了什么,或[ -f $SOME_PID_FILE ]
帮助表示赞赏!
答案 0 :(得分:5)
看起来redis-server
在启动时会创建一个名为redis.pid
的文件,并在退出时删除此文件。第一个条件通过使用-f
测试选项测试此文件是否存在来检查服务器是否正在运行,这意味着文件是否存在。如果[ -f $SOME_PID_FILE ]
错误,意味着服务器没有运行,||
(或)运算符将执行右侧,即它将启动服务器。
所以这句话意味着:
if the server is not running
run the server