查询目录下所有子目录的路径
我现在想要清除一台主机上的k8s相关的组件,但是发现有很多被挂载的目录无法删除每个目录的结构都很麻烦(十来层目录),必须要先umount 后才能删除,我们必须先获取他们的路径vi ss.sh#添加#!/usr/bin/basha_root="$1"for sub in $(ls $a_root); doif [ -d ${a_root}/${sub} ]; then./ss.sh ${a_root
·
我现在想要清除一台主机上的k8s相关的组件,但是发现有很多被挂载的目录无法删除
每个目录的结构都很麻烦(十来层目录),必须要先umount 后才能删除,我们必须先获取他们的路径
vi ss.sh
#添加
#!/usr/bin/bash
a_root="$1"
for sub in $(ls $a_root); do
if [ -d ${a_root}/${sub} ]; then
./ss.sh ${a_root}/${sub}
echo "${a_root}/${sub}"
else
echo ${a_root}/${sub}
fi
done
授权
chmod +x ss.sh
创建测试目录
mkdir -p /tmp/linshi/{test1,test2,test3}/{test1,test2,test3}/{test1,test2,test3}
测试
[root@k8s-master01 ~]# sh ss.sh /tmp/linshi
/tmp/linshi/test1/test1/test1
/tmp/linshi/test1/test1/test2
/tmp/linshi/test1/test1/test3
/tmp/linshi/test1/test1
/tmp/linshi/test1/test2/test1
/tmp/linshi/test1/test2/test2
/tmp/linshi/test1/test2/test3
/tmp/linshi/test1/test2
/tmp/linshi/test1/test3/test1
/tmp/linshi/test1/test3/test2
/tmp/linshi/test1/test3/test3
/tmp/linshi/test1/test3
/tmp/linshi/test1
/tmp/linshi/test2/test1/test1
/tmp/linshi/test2/test1/test2
/tmp/linshi/test2/test1/test3
/tmp/linshi/test2/test1
/tmp/linshi/test2/test2/test1
/tmp/linshi/test2/test2/test2
/tmp/linshi/test2/test2/test3
/tmp/linshi/test2/test2
/tmp/linshi/test2/test3/test1
/tmp/linshi/test2/test3/test2
/tmp/linshi/test2/test3/test3
/tmp/linshi/test2/test3
/tmp/linshi/test2
/tmp/linshi/test3/test1/test1
/tmp/linshi/test3/test1/test2
/tmp/linshi/test3/test1/test3
/tmp/linshi/test3/test1
/tmp/linshi/test3/test2/test1
/tmp/linshi/test3/test2/test2
/tmp/linshi/test3/test2/test3
/tmp/linshi/test3/test2
/tmp/linshi/test3/test3/test1
/tmp/linshi/test3/test3/test2
/tmp/linshi/test3/test3/test3
/tmp/linshi/test3/test3
/tmp/linshi/test3
可以看到,已经检索到所有的目录
#将路径导出卸载即可
#导出路径
sh ss.sh /tmp/linshi > 1.txt
#卸载
for i in $(cat 1.txt); do umount $i ;done
更多推荐
已为社区贡献17条内容
所有评论(0)