Hallo *.* der Liste, Ich haabe hier ein kleines Problem, welches ich mittels awk oder shell-script lösen will - geht aber noch nich :*) lso, ich habe ein Shell-Script welches ein Backup ermöglichen soll (weiter unten) (Alles was für das Problem unnötig ist hab ich erst mal rausgelöscht, weil mit dem Script auch Datenbanken, Websites, Logdateien usw. gesichert werden...) In der Datei fulldir.conf stehen zum Beispiel die 2 Zeilen /usr/local/httpd /usr/local/ftp Nun möchte ich dass das Script mit dem Tar-Befehlt folgende 2 Archive anlegt (in /root/backupdata/backup$jetzt/fulldir/): httpd.tgz ftp.tgz wobei es den Namen vor dem Punkt aus dem Pfad extrahiert. Leider habe ich keine Shell-Funktion wie split oder explode gefunden, um den gewünschten String zu generieren. Mein Ansatz mit awk ist auch ab einem gewissen Punkt gescheitert, weil ich nicht rausbekommen habe, wie ich die Shellvariablen $backupdest und $backup_fulldir in awk importieren kann, um sie dort weiterzuverwenden. Der Ansatz folgt unter dem Shell-Skript... ---------------------------------------------------------------------------- Shell-Script zum Backup ---------------------------------------------------------------------------- #!/bin/bash #notwendige Variaben definieren jetzt=`date +"%Y%m%d_%H%M%S"` #Systemspezifische Einstellungen #wo liegt das Backup-programm backuproot='/root/backupscript' #wohin soll gesichert werden (muss existieren) backupdest='/root/backupdata' #welche Komplettverzeichnisse sichern backup_fulldir='/conf/fulldir.conf' #***Backupverzeichnisbaum generieren mkdir $backupdest/backup_$jetzt cd $backupdest/backup_$jetzt #Zeitstempel erzeugen echo \*Start des Backups `date +"%d.%m.%Y#%H:%M:%S"` > backup_$jetzt.log # Verzeicunis fuer Komplettverzeichnisse mkdir fulldir #**Sicherung der Komplettverzeichnisse ##echo Sicherung von Komplettverzeichnissen ##echo \*Sicherung von Komplettverzeichnissen `date +"%d.%m.%Y#%H:%M:%S"` >> bac cd fulldir for elementconf in `cat $backuproot/$backup_fulldir` do echo \-\>Sichere Konfiguration:$elementconf echo Sichere Konfiguration:$elementconf >> ../backup_$jetzt.log # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! # Hier ist mein Problem (in dieser Variante versucht er natürlich den kompletten # Pfad zu nehmen was ja nicht klappen kann, ich will aber ja auch # nur den letzten String der Pfadinformation... tar -czf $elementconf.tgz `cat $backuproot/conf/$elementconf.conf` echo Folgende Dateien/Ordener gesichert: >> ../backup_$jetzt.log cat $backuproot/conf/$elementconf.conf >> ../backup_$jetzt.log echo \ >> ../backup_$jetzt.log done ---------------------------------------------------------------------------- Der awk-Versuch ---------------------------------------------------------------------------- gawk -F'/' '{system(tar -czf ($backupdest/backup_$jetzt/fulldir/$NF ".tar.gz" $0))}' $backuproot/conf/fulldir.conf ---------------------------------------------------------------------------- $NF soll mir das letzte Feld und $0 die gesamte aktuelle Zeile verwerten. Bei /usr/local/httpd soll also rauskommen: Sicherung des Verzeichnises /usr/local/httpd (rekursiv natürlich) als Datei httpd.tar.gz ins Verzeichnis /root/backupdata/backup_$jetzt/fulldir ---------------------------------------------------------------------------- Kann mir da jemand auf die Sprünge helfen? Wer möchte kann dieses Scriptungetüm natürlich auch in voller Länge zugeschickt bekommen (für eigenen Bedarf) BTW: Frohes neues Jahr an alle! -- Mit freundlichem Gruß Thomas Albl Deutscher Städtetag Tel. : 0221/3771-210 FAX : 0221/3771-128 eMail: mailto:thomas.albl@staedtetag.de Web : http://www.staedtetag.de