在 ConEmu 中启动 SSH

在 ConEmu 中启动 SSH

如何在 ConEmu 中设置快捷方式以使用 Cygwin 自动打开新选项卡并自动启动给定的命令(例如,SSH)?

答案1

那么让我们从如何在新选项卡中启动 cygwin bash 开始。在我的示例中,我使用 msys-git 的 cygwin bash,因为这是我安装的:

Git Bash 任务

我使用的命令是:

%systemroot%\SysWOW64\cmd.exe /c ""C:\Program Files (x86)\Git\bin\sh.exe" --login -i"

这就是一个交互式 shell。如果我想在 cygwin bash 内部运行 ls,我可以使用sh -exec 而不是sh --login -i它看起来像这样:

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>

因此,你可以使用以下命令从 cygwin bash 启动 ssh:

%systemroot%\SysWOW64\cmd.exe /c ""C:\Program Files (x86)\Git\bin\sh.exe" -exec "/usr/bin/ssh[电子邮件保护]“”

您可能需要使用引号。我建议看看我的 conemu 任务以供参考。

答案2

这是通过 ConEmu 启动并运行 SSH 任务的最无缝方式。需要更多配置,但最终还是值得的。

生成 ssh 密钥

此处优秀答案的步骤:https://serverfault.com/questions/241588/how-to-automate-ssh-login-with-password。ssh-keygen 会问你几个问题。默认答案就可以了。如果你想使用空白密码,那也没问题。只要保证你的密钥文件安全就行。用你的凭证替换 id、server 和 password。

$ ssh-keygen -t rsa -b 2048

$ ssh-copy-id id@server password

$ ssh id@server

为ssh添加任务

  • 打开 ConEmu 设置,转到启动->任务。
  • 点击 +
  • 给任务命名(我使用了“ssh”)
  • 在命令、选项卡等的大文本框中放置一个新命令:
    • ""C:\Program Files\Cmder\vendor\git-for-windows\bin\sh.exe" -exec "/usr/bin/ssh id@server""
    • 将 id 和 server 替换为你自己的

(可选)将任务设置为默认任务

  • 切换到父级设置窗口“启动”
  • 在“启动选项”中选择“指定的命名任务”单选按钮
    • 从下拉菜单中选择任务名称(我这里是 ssh)
  • 保存设置

如果您所有操作都正确,您的控制台将启动并 ssh 到您选择的服务器,由于您使用的是密钥,因此不需要密码。

答案3

C:\cygwin64\bin\bash.exe --login -i -c "ssh myUser@myServer"

-c 将在您登录后自动执行以下字符串命令

相关内容