Linux shell中if表达式中的-d值是多少?
我正在努力理解下面一段代码中所写的搜索函数的一部分,这就是所提到的表达式Linux shell中if表达式中的-d值是多少?,linux,shell,unix,Linux,Shell,Unix,我正在努力理解下面一段代码中所写的搜索函数的一部分,这就是所提到的表达式 if [ -d $1] then <action block> if[-d$1] 然后 您可以使用它来确定是否存在类似的目录 if [ -d "$DIR" ]; then # code fi -d用于查找给定目录是否存在。如果存在,则条件为真。如果不是,则条件为假 其中as-f用于查找给定文件是否存在。如果存在,则条件为真。如果不是,则条件为假 if [ -d "$dirname" ] then
if [ -d $1]
then
<action block>
if[-d$1]
然后
您可以使用它来确定是否存在类似的目录
if [ -d "$DIR" ]; then
# code
fi
-d用于查找给定目录是否存在。如果存在,则条件为真。如果不是,则条件为假 其中as-f用于查找给定文件是否存在。如果存在,则条件为真。如果不是,则条件为假
if [ -d "$dirname" ]
then
echo "directory is present"
else
echo "directory is not present"
fi
在
-d
之后不应该有=
。你确定你复制的代码正确吗?是的..得到了-f对文件的作用相同吗?可以使用-d/-f选项从/开始搜索吗?我不知道你的意思。您当然可以循环浏览目录中的所有名称,并使用-d
和-f
对每个名称进行测试,以报告它们是什么。如果问题中的示例复制不正确,请更正。如前所述,它将不会运行。是的,但请不要使用所有大写的shell变量名来运行。