这个脚本意味着什么

时间:2012-05-02 08:32:38

标签: bash shell command-prompt

我是脚本新手,我在脚本中找到了以下表达式。

if [ -d $_path ];then

有人可以帮我理解-d $ _path在if语句中的含义吗?

提前感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

来自man test

-d FILE
    FILE exists and is a directory

答案 1 :(得分:2)

这是对_path是否为目录的测试。

注意bash和DOS是两个完全不同的东西。

答案 2 :(得分:1)

检查_path的值是否为目录。请注意,_path是一个变量,$是操作的get-value(排序);它不是在寻找一个名为$_path的文件夹。

举个例子:

> mkdir dir
> touch file
> ls
dir/  file
> _path=dir    # set the variable `_path`
> if [ -d $_path ]; then echo yes; else echo no; fi
yes
> _path=file
> if [ -d $_path ]; then echo yes; else echo no; fi
no