Windows 桌面上的 cygwin ssh 快捷方式

Windows 桌面上的 cygwin ssh 快捷方式

我有多个需要远程访问的服务器。我更喜欢使用 Cygwin 而不是 Putty。

无论如何 - 打开我酷炫的 Mintty 窗口然后输入以下命令的过程太长了。PS - 我正在对这些服务器使用“密钥”身份验证。

首先,我双击 Windows 桌面上的 Cygwin 终端快捷方式。

然后,一旦终端会话启动,我就从命令提示符中输入以下内容 -

$ eval `ssh-agent`
$ ssh-add
$ ssh <username>@<servername>

请记住,我的“服务器名称”是可变的。事实上,我有大约 10 个不同的服务器名称可以插入那里 - 因此我需要 10 个不同的快捷方式。我更喜欢双击桌面上的某个东西来启动我的 Mintty 并自动执行上述 bash shell 命令。

有没有人有或者可以推荐一个好的/优雅的解决方案来做到这一点?

答案1

您需要创建一个 shell 脚本,然后有一个调用它的 mintty 快捷方式。首先,脚本:

#!/bin/bash

eval `ssh-agent`
ssh-add
read -p "Username: "
username=$REPLY
read -p "Host: "
host=$REPLY
ssh $username@$host
eval `ssh-agent -k`

将其保存为:~/bin/CygwinMinttySsh.sh

确保脚本可执行:chmod a+rx ~/bin/CygwinMinttySsh.sh

然后创建一个新的快捷方式到C:\cygwin\bin\mintty.exe,然后右键点击它并选择“属性”,并将目标更改为:

C:\cygwin\bin\mintty.exe -e /bin/sh -l -c '$HOME/bin/CygwinMinttySsh.sh'

答案2

实际上,有几种方法可以做到这一点。如果您确实需要在执行之前运行列出的命令ssh,那么请将这些命令放入mysshcygwin 主目录中名为的文件中。

eval `ssh-agent`
ssh-add
ssh <username>@$1

显然,请将您想要使用的用户名放在您有的位置<username>

然后您可以使用以下命令运行它:

c:\cygwin\bin\bash --login myssh <servername>

您当然可以将其放入 BAT 文件中。

相关内容