[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Sicherung, tar, find und Zeitstempel



Ruediger Noack <ernohl@yahoo.de> writes:

> erno@w2lap201:/home$ cat tar.sh
> EXCL=" $EXCL --exclude=\"$1\""
> EXCL=" $EXCL --exclude=\"$2\""
> echo $EXCL
> tar $EXCL -cvf /dev/null "$3"
>
> erno@w2lap201:/home$ ./tar.sh "dir mit space" "Music" testdir
> --exclude="dir mit space" --exclude="Music"
> tar: mit: Kann stat nicht ausführen.: Datei oder Verzeichnis nicht gefunden
> tar: space": Kann stat nicht ausführen.: Datei oder Verzeichnis nicht
> gefunden

Das ist klar; die Anführungszeichen haben im String keine
Sonderbedeutung.  Du kannst eval nehmen:

  eval tar $EXCL -cvf "$3"

aber du bekommst dann Probleme mit vielen Sonderzeichen.
Die saubere Lösung ist ein Array:

  EXCL=("${EXCL[@]}" "--$1")
  ...
  tar "${EXCL[@]}" cvf "$3"

Beides ungetestet.

Gruß,

 Heike



Reply to: