为了账号安全,请及时绑定邮箱和手机立即绑定

检查shell脚本中是否存在目录

检查shell脚本中是否存在目录

手掌心 2019-07-04 18:04:28
检查shell脚本中是否存在目录在shell脚本中,可以使用什么命令来检查目录是否存在?
查看完整描述

3 回答

?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

记住,在bash脚本中引用变量时,始终要用双引号包装变量。如今的孩子们在成长过程中的想法是,他们的目录名中可以有空格和许多其他有趣的字符。(空格!在我的时代,我们没有华丽的空间!)

总有一天,其中一个孩子会用$DIRECTORY设为"My M0viez"你的剧本就会爆炸。你不会想要的。所以用这个。

if [ -d "$DIRECTORY" ]; then
    # Will enter here if $DIRECTORY exists, even if it contains spacesfi


查看完整回答
反对 回复 2019-07-04
?
月关宝盒

TA贡献1772条经验 获得超5个赞

注意-d测试可以产生一些令人惊讶的结果:

$ ln -s tmp/ t
$ if [ -d t ]; then rmdir t; firmdir: directory "t": Path component not a directory

文件下面:“什么时候目录不是目录?”答案是:“当它是指向目录的符号链接时。”略为彻底的测试:

if [ -d t ]; then 
   if [ -L t ]; then 
      rm t   else 
      rmdir t   fifi

您可以在Bash手册中找到更多信息。Bash条件表达式[内建命令[[复合交通.


查看完整回答
反对 回复 2019-07-04
  • 3 回答
  • 0 关注
  • 1792 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信