PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Shellscript zum taren



SeeksTheMoon
22-03-2002, 14:24
Hallo!

Wie kriege ich ein Bash-Script hin, das eine oder mehrere als Parameter angegebene Dateien / Ordner nach tar schickt?

ich hab bisher folgendes:

#!/bin/bash

tar cvf $1.tar $1 && gzip --best $1.tar

Aber was mach ich, wenn die Datei Leerzeichen enthält?
Wenn ich " " setze, dann nützt das nichts und die ' ' schützen zu stark; dann sucht er nach einer Datei mit dem Namen $1.

Wenn ich tar und gzip ohne && verknüpfen will, z.B. durch pipe oder backquotas, wie stelle ich das dann an? Ich hab mehrere Kombinationen ausprobiert, die waren aber wohl nicht richtig.

denis
22-03-2002, 15:30
tar czvf "$1.tar.gz" "$1"

Funktioniert bei mir.
Aber auch hier muss beim Aufruf des Shellscripts der Dateiname, sofern er Leerzeichen enthält, in Anführungszeichen gesetzt werden.

Wenn czvf nicht automatisch zippen sollte dann kann man es mit pipes noch so machen:

tar cv "$1" | gzip --best > "$1.tar.gz"

SeeksTheMoon
22-03-2002, 18:51
ok, und wie finde ich heraus, ob die $1 Datei schon auf tar.gz oder .zip aufhört?