Problem mit bash-Skript
oh mann - ich hab die Lösung:
#!/bin/bash
das ist der Fehler gewesen - das hat gefehlt.
ohne #!/bin/bash gibt echo $HOSTNAME in einem Shellskript nur ein " " ;-)
kann es sein, das
echo $HOSTNAME in der Shell etwas anderes ergibt als in einem Bash-Skript?
debianfan wrote:
> dateiname="{$datum}_{$HOSTNAME}"
falsch: {$foo}
korrekt: ${foo}
(wie bereits im 2. Posting geschrieben wurde)
So setze ich das:
datum=`date +%Y%m%d`
dateiname="{$datum}_{$HOSTNAME}"
mkdir /backup/${dateiname}
tar -cPf /backup/${datum}/${$dateiname}_$1.tar --exclude=/home/$1/Maildir /home/$1
gzip /backup/${datum}/${dateiname}_$1.tar
Im Prinzip geht es darum, dass die Sicherungsdateien vom User test3 und der Maschine pro1.meinedomain.de den Dateinamen 2012_02_06_pro1.meinedomain.de_test3.tar.gz bekommen.
debianfan wrote:
> kommt dann raus - er nimmt den Hostnamen nicht mit :-(
Zeig nochmal wie du jetzt deine Variablen setzt.
/backup/20120207/20120207__test3.tar
kommt dann raus - er nimmt den Hostnamen nicht mit :-(

Zitat von
debianfan
Code:
datum=`date +%Y%m%d`
dateiname="{$datum}_{$HOSTNAME}"
mkdir /backup/${dateiname}
tar -cPf /backup/${datum}/${$dateiname}_$1.tar --exclude=/home/$1/Maildir /home/$1
gzip /backup/${datum}/${$dateiname}_$1.tar
Ich habe hier keine bash und kein Linux, aber IIRC muß das lauten:
Code:
dateiname="${datum}_${HOSTNAME}"
tar -cPf /backup/${datum}/${dateiname}_$1.tar -- etc.
gzip /backup/${datum}/${dateiname}_$1.tar
Hi,
der Hostname ist so aufgebaut:
pro1.meinedomain.de
und der Dateiname lautet dann
{20120205}_{pro1.meinedomain.de}
allerdings halt mit den {}
mach mal in der bash ein:
dateiname="{$datum}_{$HOSTNAME}"
echo $dateiname
touch $dateiname
und schau mal, ob er das File erzeugen kann. Ich würde grade darauf Tippen, dass im Hostnamen ein nicht erlaubtes Zeichen ist.
Hallo,
ich lasse täglich automatisiert Sicherungen laufen - ich würde da ich nicht nur eine Maschine habe, den Hostnamen dort integrieren:
Code:
datum=`date +%Y%m%d`
dateiname="{$datum}_{$HOSTNAME}"
mkdir /backup/${dateiname}
tar -cPf /backup/${datum}/${$dateiname}_$1.tar --exclude=/home/$1/Maildir /home/$1
gzip /backup/${datum}/${dateiname}_$1.tar
ergibt aber - 5: bad substitute als Meldung :-(
Der Aufruf erfolgt mit
./backup.sh username