【发布时间】:2020-10-08 11:40:07
【问题描述】:
我有一个目录,其中包含大量子目录。 我需要遍历所有子目录并将其名称(没有路径!)保存为不同的变量
for d in ${output}/*/
do
dir_name=${d%*/}
echo ${dir_name}
done
当前版本的问题是它给了我目录的完整路径。这是回显的结果
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig992
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig993
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig994
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig995
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig996
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig997
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig998
/Users/gleb/Desktop/DOcking/clusterizator/sub_folders_to_analyse/7000_CNE_lig999
【问题讨论】:
-
试试命令
basename -
你也可以使用 dir_name=${d##*/}