Jens Puruckherr wrote:
Hallo,
ein Shellscript kopiert cron-gesteuert Files aus einem Verzeichnis auf eine Remot-Maschine. Wenn scp erfolgreich war (man scp: The scp utility exits 0 on success, and >0 if an error occurs. ), dann sollen die lokalen Files gelöscht werden.
Allerdings gestaltet sich die Prüfung auf "0" schwieriger als gedacht:
... rc=`/usr/bin/scp -qpB ${j} user@host:verzeichnis/${j}` if [ "$rc" = "0" ] ; then ...
matcht nie.
Natürlich nicht. In rc steht ja auch nicht der Rückgabewert deines scp-Aufrufs, sondern die Ausgabe.
Versuch mal sowas: /usr/bin/scp -qpB ${j} user@host:verzeichnis/${j} rc=$? if [ "$rc" = "0" ] ; then ...
Noch ein Hinweis: Wollen wir mal hoffen, daß dein $j niemals Leerzeichen enthält... sonst müßtest du das vielleicht ein wenig besser verpacken: /usr/bin/scp -qpB "${j}" "user@host:verzeichnis/${j}"
Ciao, Thomas