Archiv verlassen und diese Seite im Standarddesign anzeigen : bash: abfrage ob eine datei exisitiert
Hallo
Hab ein kleines Backup script und möchte nun, dass das script vorher überprüft ob eine bestimmte datei existiert.
Also so etwa:
if dateix = vorhanden then
... mein script...
else
ende
Kann mir da jemand helfen?
Gruß
Psych
if [ -e dateix ] ;then
... dein script...
fi
Siehe auch man test.
if test -f "dateix"; then
... mein script...
fi
EDIT: Na dann post ich mal die Lösung für/mit test
Greeez Oli
Danke euch beiden :D
Gruß
psych
EDIT: Na dann post ich mal die Lösung für/mit test
Naja, bei den meisten Shells ist " [ ] " (man beachte die Leerzeichen um die Klammern) eh' ein "Alias" auf Test :)
Hab nochmal ne Frage... wie schaffe ich es, dass die Ausgabe des Scripts mir per Email geschickt wird! Haben einen funktionierenden Smtp Server im Netz, allerdings auf einer anderen Maschine.
Danke
Psych
Dein Entfernter SMTP Server erfordert sicherlich ein Authenfikation!
Hab dir da mal was geschrieben .. hab es getestet bei mir funktioniert es :)
Dazu musst du aber netcat installieren!
#!/bin/sh
SMTPSERVER="0.0.0.0"
SMTPUSER="username"
SMTPPASS="passwort"
SOURCE="absender@domain.de"
TARGET="zieladresse@domain.de"
SUBJECT="Betreff"
$DATEI="/pfad/dateix"
MAILTEXT=$DATEN
if [ -e $DATEI ] ;then
DATEN="Deine Datei existiert!"
TMPDATA="/tmp/send.txt"
CRYPT=$(perl -MMIME::Base64 -e 'print encode_base64("'$SMTPUSER'\0'$SMTPUSER'\0'$SMTPPASS'");')
echo HELO localhost > $TMPDATA
echo AUTH PLAIN $CRYPT > $TMPDATA
echo MAIL FROM: $SOURCE >> $TMPDATA
echo RCPT TO: $TARGET >> $TMPDATA
echo DATA >> $TMPDATA
echo SUBJECT: $SUBJECT >> $TMPDATA
echo TO: $TARGET >> $TMPDATA
echo $MAILTEXT >> $TMPDATA
echo . >> $TMPDATA
echo QUIT >> $TMPDATA
cat $TMPDATA | netcat $SMTPSERVER 25
rm -f $TMPDATA
fi
Aber sei gewarnt deine SMTP Logindaten stehen dann im Klartext im diesem Script!
Viel Spass...
Greeez Oli
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.