【发布时间】:2016-05-24 03:11:49
【问题描述】:
简单的问题,我不明白下面语句中的! 和-d 是什么意思。
if [ ! -d $directory ]
【问题讨论】:
-
[也是test命令,因此请阅读此内容,如“如果测试 NOT 目录 $dir”... 然后做一些事情。祝你好运。 -
aside:需要
[ ! -d "$directory" ]才能正确;如果没有引号,如果您的目录名称包含空格或可以扩展为 glob,它将表现不佳。 -
顺便说一句,下次遇到不理解的 shell 时,请尝试将其复制并粘贴到 explainshell.com 中(尽管在这种情况下,要么不带
if,要么添加; then : "something here"; fi在最后使语法正确)。 -
感谢explainshell.com。到目前为止,我只知道 shellcheck.net