The UNIX and Linux Forums  
Hello and Welcome from United States to the UNIX and Linux Forums! Thank You for Visiting and Joining Our Global Community.

Go Back   The UNIX and Linux Forums > Top Forums > Shell Programming and Scripting
.
google unix.com




View Single Post in the UNIX and Linux Forums - Click on the Thread or Permalink to View Entire Thread -->
  #1 (permalink)  
Old 08-19-2008
MartyIX MartyIX is offline
Registered User
  
 

Join Date: May 2008
Posts: 68
How to check if all directories of file's path exists?

I wonder if the script below is possible to write somehow more efficiently. It seems to me the problem is very common..

CreateFolders() # parameter: name of file with relative path with regard to directory $project_root
{
echo $1 | awk '{ n=split($1, array, "/");
for (i=1;i<n;i++) {
print array[i]
}
} ' >"$project_root/createDirectory.tmp"

if [ -s "$project_root/createDirectory.tmp" ]; then

folder=$project_root

while read subdir; do

if [ ! -d "$folder/$subdir" ];then
mkdir "$folder/$subdir"
fi

cd "$folder/$subdir"

folder="$folder/$subdir"

done<"$project_root/createDirectory.tmp"

fi

rm "$project_root/createDirectory.tmp";
}

Thank you for help