Bash-Skript, while-Schleife mit ssh
Hallo,
ich habe folgendes Problem und suche nach einer Erklärung; einen
Workaround mit einer for-Schleife habe ich bereits erfolgreich getestet.
Es geht mir um das Verständnis.
Ich habe zeilenorientierte Daten, die ich mit folgenden Skript-Code
einlese. Das folgenden Beispiel durchläuft alle Zeilen einwandfrei:
cat daten.txt | while read varzeile
do
# Nun ist die Zeile in der Variable varzeile.
echo "${varzeile}"
done
Jetzt das Problem: Das nun folgende Beispiel durchläuft nur die erste
Zeile:
cat daten.txt | while read varzeile
do
# Nun ist die Zeile in der Variable varzeile.
echo "${varzeile}"
ssh user@serverurl "./befehl auf dem server mit ${varzeile} übergeben"
done
Warum ist das so? Was macht denn der ssh-Befehl mit der while-Schleife?
Das OS, auf dem das obige Skript gestartet wird, ist Lenny. Der Befehl
SSH verbindet sich mit einem Etch-Rechner. SSH kann den user mit
bekanntem Schlüssel (ssh-copy-id) ohne einen Passwortprompt am Server
anmelden.
Danke Markus
Reply to: