我有一個包含大量子文件夾(即1190A,1993A等)的工作目錄。在現有子目錄中遞歸創建目錄樹
'/working/1190A'
'/working/1993A'
我想在每個子文件夾內遞歸地創建一個特定的目錄樹。例如:
'/working/1190A/analysis/1'
'/working/1993A/analysis/1'
etc
謝謝。
我有一個包含大量子文件夾(即1190A,1993A等)的工作目錄。在現有子目錄中遞歸創建目錄樹
'/working/1190A'
'/working/1993A'
我想在每個子文件夾內遞歸地創建一個特定的目錄樹。例如:
'/working/1190A/analysis/1'
'/working/1993A/analysis/1'
etc
謝謝。
要強制系統創建一個目錄樹,而不必創建它的每個級別,請將-p
添加到mkdir
命令。
因此,這可能是工作:
for dir in list_of_folders
do
mkdir -p $dir/your/directory/tree
[ $? ] && echo "error on $dir" # if the dir could not be created, print error (thanks @hetepeperfan - see comments)
done
注意,list_of_folders
可以給像/working/1190A /working/1993A
,而且還帶有find
命令生成。這只是第一個版本,你最好適應你的具體要求。
yourDirList=/working/*
for f in $yourDirList
do
if [ -d $f ]
mkdir -p $f/analysis/1
fi
done
這是一個班輪爲
cd /working
find . -maxdepth 1 -type d -exec mkdir -p '{}'/analysis/1 \;
非常感謝!作品一種享受。 – ap123
這可能是明智的檢查的mkdir的退出狀態,否則可能OP在以後的過程中出現錯誤。 – hetepeperfan
謝謝,@ hetepeperfan,我在這種情況下添加了一個'echo'。 – fedorqui
可能會更好,通過'find/working/-maxdepth 1 -type d'獲取文件夾列表 – Rohan