[linux-support] Shellscriptfragen

michel gibsound at bluewin.ch
Fri Sep 17 19:48:58 CEST 2004


Hallo,

mindestens war die Syntax der for Schleife nicht richtig, aber milosh 
hat ein Beispiel mit der richtigen Syntax gegeben:
for i in $(ls); do tar xxxxx; done
und nicht "do ; tar xxxxx; done
Das Semikolon trennt die drei "for", "do" und "done" Teile.

Anstelle Backticks ziehe ich die $( xxx ) Syntax vor. Es mit kleinen 
Fonts ist es sichtbarer (ich habe 4 nicht "überlappenden" 
Terminal-Emulationen pro Virtual Desktop auf meinem 18" Bildschirm)

Sonst habe ich gerade folgendes probiert:
for DIR in $(/bin/ls -o | grep drwx | cut -c48-);do tar cvjf 
arch_$DIR-$(date +%Y%m%d).bz2 $DIR;done

Die Bzip2-Dateien wurden im Verzeichnis erstellt
ls -o ist ein bisschen kürzer (keine Gruppe) und mit dem "grep drwx" 
kann man die Verzeichnisse filtrieren. Mit ls -l muss man 
selbstverständlich das Offset von "cut" anpassen

Gruss,
Michel Odillon


Thomas Deutsch wrote:

>Hallo zusammen
>
>Ich versuche gerade was zu basteln, aber das funzt noch nicht ganz:
>
>cd /home && for i in 'ls' do; tar -czvf /data/backup/homes/$i-$(date 
>+%Y%m%d).tar.gz $i; done
>
>Ziel ist, dass das Script nach /home wechselt, und aus jedem Order da ein 
>einzelnes tar.gz macht. Also nicht einfach alle zusammen in einem File.
>
>Leider bekomme ich immer die Fehlermeldung bash: syntax error near 
>unexpected token 'tar'
>
>Was ist da falsch?
>
>mfg
>
>Thomas
>
>  
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Linux-support mailing list
>Linux-support at lugbe.ch
>http://www.lugbe.ch/vmailman/listinfo/linux-support
>  
>



More information about the Linux-support mailing list