Folgendes sollte funktionieren: Überprüfen Sie für weitere Informationen man vagrant
, man ssh
und man who
.
vagrant ssh -c "who -a"
Es sollte eine einfache Frage sein.
Ich hatte dort eine Vagrant Box, wo ich Vagrant SSH starten kann, ohne auf das Passwort zuzugreifen.
Und wie kann ich den ssh-Befehl aus der Ferne ausführen, um ein Ergebnis wie unten zu erhalten, das in jenkins CI-Server verwendet werden kann, um etwas zu überprüfen.
$ vagrant ssh 'who -a'
Meine Umgebung
Folgendes sollte funktionieren: Überprüfen Sie für weitere Informationen man vagrant
, man ssh
und man who
.
vagrant ssh -c "who -a"
Sie können auch Folgendes verwenden, um die ssh config hinter dem vagrant ssh
Befehl zu sehen:
vagrant ssh-config
Hinweis: Dies funktioniert nur, wenn Sie es getan haben vagrant up
.
Verwenden Sie dann die IP-Adresse, den Port, den Schlüssel usw. in Ihrem eigenen ssh-Befehl:
ssh -i /path/to/vagrant/keyfile vagrant@ip:port who -a
Um komplexe Befehle in Jenkins auszuführen, bevorzuge ich die folgende Syntax
vagrant ssh -- who -a
Dabei wird alles nach dem '-' als Befehl an die VM der VM übergeben.
Von http://docs.vagrantup.com/v2/cli/ssh.html :
Wenn in der Befehlszeile ein - (zwei Bindestriche) gefunden wird, werden alle darauf folgenden Argumente direkt in die ausführbare Datei ssh übergeben.