![如果目录不存在则使用test命令创建](https://linux22.com/image/61157/%E5%A6%82%E6%9E%9C%E7%9B%AE%E5%BD%95%E4%B8%8D%E5%AD%98%E5%9C%A8%E5%88%99%E4%BD%BF%E7%94%A8test%E5%91%BD%E4%BB%A4%E5%88%9B%E5%BB%BA.png)
我只是想知道这个脚本代码是否可以正确测试 dir2 是否存在,如果不存在,则创建它。 Dir1 已经存在。
[ ! -d /dir1/dir2 ] && mkdir /dir1/dir2
答案1
dir1/dir2
如果存在但不是目录,您的命令可能会失败。如果您想测试是否dir1/dir2
存在,请使用-e
[ -e dir1/dir2 ] || mkdir dir1/dir2
如果您确实需要dir1/dir2
成为一个目录,并且具有该名称的普通文件是错误的并且应该被替换,您可以测试这种情况。
[ -e dir1/dir2 ] && [ ! -d dir1/dir2 ] && rm dir1/dir2
[ -d dir1/dir2 ] || mkdir dir1/dir2