检查目录是否存在,并在一个命令中删除unix

是否有可能检查一个目录是否存在,如果是,使用单个命令在Unix中删除? 我有使用ANT'sshexec'任务的情况,我只能在远程机器上运行一个命令。 我需要检查目录是否存在并删除它…

为什么不使用rm -rf /some/dir ? 如果它存在,将删除目录,否则什么都不做。

尝试:

 bash -c '[ -d my_mystery_dirname ] && run_this_command' 

编辑 :这将工作,如果你可以在远程机器上运行bash ….

编辑2 :在bash中, [ -d something ]检查是否存在名为“something”的目录,如果存在并且是目录,则返回成功代码。 使用&&链接命令仅在第一个命令成功时运行第二个命令。 所以[ -d somedir ] && command命令仅在目录存在的情况[ -d somedir ] && command运行该命令。

假设$WORKING_DIR被设置为目录…这一行应该做到这一点:

 if [ -d "$WORKING_DIR" ]; then rm -Rf $WORKING_DIR; fi 

(否则只需要replace你的目录)