wow so schnell gibt hier schon lösungen - ihr seit spitze
ich habe es nun selbst lösen können :
Code: Alles auswählen
ExcludeDir="/data/speefak_nc/files/## Exclude from Backup ##;/data/testuser"
# set exclude proceessing parameter
SAVEIFS=$IFS
IFS=";"
for i in $ExcludeDir;do
ExcludeDirParameterTar=$(echo "$ExcludeDirParameterTar" " --exclude=\"$WebsiteDir$i\"")
ExcludeDirParameterDu=$(echo "$ExcludeDirParameterDu" " --exclude="*$(echo $i | sed 's/ /\\ /g')"")
done
IFS=$SAVEIFS
# calculate directory sizes
GlobalDirSize=$(du -sh $ApacheDir/$WebsiteDir | awk -F ' ' '{print $1}')
ExcludeDirSize=$(eval "du -sh $(echo "$ApacheDir/$WebsiteDir $ExcludeDirParameterDu")" | awk -F ' ' '{print $1}')
warum das funktioniert ist mir allerdings nicht 100%tig klar.
whisper, funktioniert auch nur wenn keine Leerzeichen im Pfad enthalten sind
tobo, funktioniert ohne leerzeichen im Pfad :
Code: Alles auswählen
du -sh "$my_path" --exclude="$my_exclude1" --exclude="$my_exclude2"
Das Problem sind die Leerzeichen, wären diese nicht vorhanden würde du auch nicht herumzicken ( vorige version ging nur ohne Leerzeichen, bis jmd Verzeichnisse mit Leerzeichen erstellte
)
tar kommt mit den leerzeichen in variablen klar, du irgendwie nicht.