Ich versuche, $ 1, $ 2 Variablen zu verwenden, die ich über die Befehlszeile zu einem Bash-Shell-Skript übergeben habe. Diese Variablen verwende ich innerhalb eines SSH-Aufrufs. Aber es scheint, dass die Variablen innerhalb von SSH nicht ersetzt werden, die äußeren werden ersetzt. Irgendeine Problemumgehung? Hier ist der CodeKommandozeilenparameter in der Bash-Shell-Skript in verschachtelten ssh
#!/bin/bash
ssh -t "StrictHostKeyChecking=no" -i $1 [email protected]<<'EOF1'
ssh -t -i $1 [email protected] <<'EOF2'
exit
EOF2
exit
EOF1
Hier wird die erste $ 1 ersetzt, aber die zweite nicht. Sein im Allgemeinen Schlüsselname für Passwort-Authentifizierung weniger
Wenn Sie eine bessere Antwort wollen als das, was ich bereits zur Verfügung gestellt haben, müssen Sie eine bessere Frage stellen. Code anzeigen, um das Problem möglicherweise zu reproduzieren? –
Werfen Sie einen Blick auf [Erstellen eines minimalen, vollständigen und überprüfbaren Beispiels] (http://stackoverflow.com/help/mcve). – Cyrus
Haben Code hinzugefügt. –