当我安装nvm时,我遇到了这个shell语句[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
。
在本声明[ -s "$NVM_DIR/nvm.sh" ]
中,它是什么意思?
答案 0 :(得分:1)
在shell脚本中,[
命令是test
命令的别名,用于实现条件表达式。
如果您阅读bash
手册页的“条件表达式”部分,您会发现:
-s file
True if file exists and has a size greater than zero.
因此,[ -s "$NVM_DIR/nvm.sh" ]
表达式是一个条件表达式,如果0
处的文件都存在并且大小大于0,则返回成功($NVM_DIR/nvm.sh
)。
完整的表达......
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh".
...基本上读取“如果文件存在并且大小大于0,则将文件源化为当前shell”。