有人可以向我解释这个shell脚本中发生了什么吗?

时间:2014-01-15 16:15:50

标签: shell unix scripting

我理解它会转到目录并递归并强制删除./tmp。我的问题是“-d ./tmp”。 -d做什么以及为什么“./”会出现在tmp前面?

提前致谢

cd $WORKING_DIR

if [ -d ./tmp}; then
       rm -rf ./tmp
fi

1 个答案:

答案 0 :(得分:1)

它检查./tmp是否存在并且是目录。在这种情况下,它将删除它。

来自man test

  

-d FILE

     

FILE存在且是目录


顺便说一下,语法有错误:

if [ -d ./tmp}; then
             ^
             needs space and ] instead of }

正确:

if [ -d ./tmp ]; then