我找到了这个命令。我知道源代码重新加载了 bash 配置文件并修复了 Ubuntu 所需的 Ruby 权限。但是 && 之前的部分是什么意思?
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
最佳答案
让我们分解一下:
[[
和 ]]
启用了与传统编程语言更相似的高级功能,允许使用 ||
而不是 -o
和 &&
而不是 -a
。
有关这方面的更多信息,请参阅 How to use double or single brackets, parentheses, curly braces但据我所知 -s
不需要额外的功能,双括号可以用单括号代替)
-s
测试文件是否存在且非空
&&
将自动运行右边的命令,只要左边的命令执行时没有错误返回码。
因此,该语句测试文件是否存在且非空,如果存在,它会将其 source 到当前 shell 环境中。
关于linux - [[ -s 在 linux shell 中是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12868820/