Anzeige:
Ergebnis 1 bis 3 von 3

Thema: sternchen (*) in variable auswerten

  1. #1
    Registrierter Benutzer
    Registriert seit
    07.05.2005
    Beiträge
    15

    sternchen (*) in variable auswerten

    hallo, ich habe mir ein backup-script geschrieben, meine config dateien usw einzusammeln und zu packen. mit einzelnen dateien ist alles roger, aber es gibt anwendungen, da brauche ich das ganze verzeichnis (openvpn, openssl). dazu brauche ich ein sternchen (für alles im verzeichnis) in einer variable.

    hier das script bis jetzt:

    Code:
    # Dieses Script sammelt die Config-Dateien des
    # bkupsrv01 ein und packt sie
    #
    
    # Variablen fuer verschiedene config-namen
    samba_conf=smb.conf
    gnump3d_conf=gnump3d.conf
    cups_conf=cupsd.conf
    pureftpd_conf=pure-ftpd.conf
    openvpn_conf="*"
    postfix_conf=main.cf
    openssl_conf="*"
    
    # wertet letzten rueckgabewert aus
    erfolgreich()
    {
    	if [ $? == 0 ]
    	then
    		echo erfolgreich!
    	else
    		echo nicht erfolgreich!
    	fi
    }
    
    backup()
    {
        if [ $# < 2 ]
        then
    	echo "Fehlerhafte Argumentenanzahl"
        else
    	echo "$1..."
    	mkdir -p /data2/backup/config-dateien/$1
        fi
    # testen, wo die config-datei liegt: /etc/name/datei.conf oder /etc/datei.conf    
        if [ -d /etc/$1 ]
        then
    	cp -rvu /etc/$1/$2 /data2/backup/config-dateien/$1/
        else
    	cp -rvu /etc/$2 /data2/backup/config-dateien/$1/
        fi
        
        erfolgreich
        echo
    }
    
    restore()
    {
        echo
        echo "archiv wird entpackt..."
        tar jxfv config-dateien.tgj
        echo
        echo "configs werden an ursprungsorte kopiert..."
        cp -vi /data2/backup/config-dateien/gnump3d/* /etc/gnump3d/
        cp -vi /data2/backup/config-dateien/samba/* /etc/samba/
        cp -vi /data2/backup/config-dateien/cups/* /etc/cups/
        cp -vi /data2/backup/config-dateien/postfix/* /etc/postfix/
        cp -vi /data2/backup/config-dateien/pure-ftpd/* /etc/pure-ftpd/
        cp -vi /data2/backup/config-dateien/coot.local/* /etc/init.d/
        cp -vi /data2/backup/config-dateien/openvpn/* /etc/openvpn/
        rm -vr /data2/backup/config-dateien/
    }
    
    case $1 in
        backup)	
    	for n in "gnump3d $gnump3d_conf" "cups $cups_conf" "pure-ftpd $pureftpd_conf" "openvpn $openvpn_conf" "postfix $postfix_conf" "openssl $openssl_conf"
    	do
    	    backup $n
    	done
    	
    	echo ganzen kram packen...
    	tar -jvcf /data2/backup/config-dateien.tgj /data2/backup/config-dateien/
    	erfolgreich
    	rm -vr /data2/backup/config-dateien/
    	;;
    
        restore)
    	restore
    	;;
    
        *)
    	echo
    	echo "{backup | restore}"
    	echo
    	;;
    esac
    exit
    Geändert von iso (19-07-2005 um 13:10 Uhr)

  2. #2
    Registrierter Benutzer Avatar von Romanday
    Registriert seit
    03.02.2004
    Beiträge
    829
    Soweit ich mich dunkel erinnern kann, ist in $* alle Parameter
    die dem Script übergeben werden gespeichert.
    Die könnte man dann z. B. nach einem * parsen. (ungetestet)

  3. #3
    Registrierter Benutzer
    Registriert seit
    07.05.2005
    Beiträge
    15
    also,
    Code:
    echo $*
    bringt nix. oder hab ich dich falsch verstanden?

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •