diff --git a/lib/copy/copyFiles_action b/lib/copy/copyFiles_action index 0134eb5..0174f76 100644 --- a/lib/copy/copyFiles_action +++ b/lib/copy/copyFiles_action @@ -50,16 +50,23 @@ copyFiles_action() { destdir="$(guessPath)" || continue else destdir="${destinationpath["$destination"]}/" - destdir+=$(sanitizeFile "${sourcefilename%%/*}" dir) - part=${sourcefilename#*/} - while [[ $part =~ / ]] - do - destdir+="/$(sanitizeFile "${part%%/*}" dir)" - part=${part#*/} - done - if ! [ -d "$destdir" ] + if [[ $sourcefilename =~ / ]] then - mkdir -p "$destdir" + destdir+=$( + sanitizeFile "${sourcefilename%%/*}" dir + ) + part=${sourcefilename#*/} + while [[ $part =~ / ]] + do + destdir+="/$( + sanitizeFile "${part%%/*}" dir + )" + part=${part#*/} + done + if ! [ -d "$destdir" ] + then + mkdir -p "$destdir" + fi fi fi if cp -al "$sourcepath/$sourcefilename" "$destdir" 2>/dev/null\