Antworten:
Beginnen wir also damit, wie Sie Cygwin Bash in einem neuen Tab starten. In meinem Beispiel verwende ich die Cygwin-Bash von msys-git, weil ich Folgendes installiert habe:
Der Befehl, den ich benutze, ist:
% systemroot% \ SysWOW64 \ cmd.exe / c "" C: \ Programme (x86) \ Git \ bin \ sh.exe "--login -i"
Das ist also eine interaktive Shell. Wenn ich ls innerhalb von Cygwin Bash ausführen möchte, kann ich sh -exec
stattdessen Folgendes verwenden : sh --login -i
Es würde folgendermaßen aussehen:
C:\Users\JDearing>"C:\Program Files (x86)\Git\bin\sh.exe" -exec "/bin/ls c:\\"
+ /bin/ls c:
$Recycle.Bin VC_RED.MSI install.exe
BOOTSECT.BAK VC_RED.cab install.ini
Chocolatey Windows install.res.1028.dll
Documents and Settings boot install.res.1031.dll
EntLib41Src bootmgr install.res.1033.dll
Intel eula.1028.txt install.res.1036.dll
MSOCache eula.1031.txt install.res.1040.dll
PerfLogs eula.1033.txt install.res.1041.dll
Program Files eula.1036.txt install.res.1042.dll
Program Files (x86) eula.1040.txt install.res.2052.dll
ProgramData eula.1041.txt install.res.3082.dll
Recovery eula.1042.txt old_machine
RiskWorks eula.2052.txt pagefile.sys
SWSetup eula.3082.txt profiles
SafeBoot.fs globdata.ini sysinternals
SafeBoot.rsv hiberfil.sys vcredist.bmp
System Volume Information ilspy
Users inetpub
C:\Users\JDearing>
Sie können ssh also wahrscheinlich von cygwin bash aus starten mit etwas wie:
% systemroot% \ SysWOW64 \ cmd.exe / c "" C: \ Programme (x86) \ Git \ bin \ sh.exe "-exec" / usr / bin / ssh Car981@linuxbox.domain.com ""
Möglicherweise müssen Sie mit Anführungszeichen spielen. Ich würde vorschlagen, meine Conemu-Aufgaben als Referenz zu betrachten.
bash.exe -c "ssh ..."
eher alsbash.exe --exec "ssh ..."
Dies ist der scheinbar einfachste Weg, um eine SSH-Aufgabe über ConEmu zum Laufen zu bringen. Benötigt etwas mehr Konfiguration, aber es lohnt sich am Ende.
Schritte von einer ausgezeichneten Antwort hier: /server/241588/how-to-automate-ssh-login-with-password . ssh-keygen wird Ihnen einige Fragen stellen. Die Standardantworten sind in Ordnung. Wenn Sie mit einer leeren Passphrase arbeiten möchten, ist das auch in Ordnung. Bewahren Sie einfach Ihre Schlüsseldatei auf. Ersetzen Sie ID, Server und Passwort durch Ihre Anmeldeinformationen.
$ ssh-keygen -t rsa -b 2048
$ ssh-copy-id id@server password
$ ssh id@server
""C:\Program Files\Cmder\vendor\git-for-windows\bin\sh.exe" -exec "/usr/bin/ssh id@server""
Wenn Sie alles richtig gemacht haben, wird Ihre Konsole gestartet und auf dem Server Ihrer Wahl ssh, ohne dass ein Kennwort erforderlich ist, da Sie einen Passkey verwenden.
C:\cygwin64\bin\bash.exe --login -i -c "ssh myUser@myServer"
Das -c führt den folgenden Zeichenfolgenbefehl automatisch aus, nachdem Sie sich für Sie angemeldet haben
cmd /c
ist in der Tat übermäßig, es sei denn, Sie müssen Umgebungsvariablen einrichten, bevor Sie ssh.exe ausführen. Wenn Sie keine Umgebung einrichten müssen, können Sie ssh.exe direkt ohne "cmd / c" ausführen.