正如标题所说,我想将目录名称添加到数组中,但无法弄清楚如何。这就是我到目前为止所做的:
path=some/path/in/linux
declare -a categ_array
for d in ${path}/*; do
#strip directory name of the path
dir_name=${d##*/}
#add the directory name into array
categ_array+=("${dir_name}")
done
echo ${categ_array}
此代码仅输出1个目录名称(无论我有多少目录)。
答案 0 :(得分:4)
您需要使用此命令打印所有目录:
echo "${categ_array[@]}"
虽然你可以避免循环而只是使用:
cd "$path"
categ_array=()
categ_array+=(*/)
检查结果:
declare -p categ_array