![在 Bash 中,如何测试是否存在具有给定路径的目录?](https://linux22.com/image/1503513/%E5%9C%A8%20Bash%20%E4%B8%AD%EF%BC%8C%E5%A6%82%E4%BD%95%E6%B5%8B%E8%AF%95%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E5%85%B7%E6%9C%89%E7%BB%99%E5%AE%9A%E8%B7%AF%E5%BE%84%E7%9A%84%E7%9B%AE%E5%BD%95%EF%BC%9F.png)
我有以下 bash 代码:
drlist="/backups /Blogs /data /dpkg-repack /Scripts /var/www";
for word in $drlist; do
echo $word;
done
我需要做的是测试是否$word
存在目录,如果不存在则执行以下操作:
mkdir $word;
chown -R $user:users $word;
chmod -R 775 $word;
然后所有目录都存在并且正确设置以供我接下来的处理。
答案1
最新代码:
drlist="/backups /Blogs /data /dpkg-repack /Scripts /var/www";
for word in $drlist; do
if [[ -d "$word" ]]; do
echo "Found Dir=> $word";
else
echo "Creating Dir=> $word";
mkdir -p $word;
chown -R $user:users $word;
chmod -R 775 $word;
fi
done
当然,我真的不想看到任何回声,也无法解决目录测试的负面结果,因此仍然需要一点帮助。
在当前测试的机器上,它运行正确,找到了除正确创建的“博客”目录之外的所有内容!
干杯!
光学阅读器