Bash windows桌面上的cygwin ssh快捷方式

Bash windows桌面上的cygwin ssh快捷方式,bash,windows-7,ssh,cygwin,Bash,Windows 7,Ssh,Cygwin,我有多台需要远程访问的服务器。 我更喜欢Cygwin而不是Putty这样做 总之,打开我的酷Mintty窗口,然后键入以下命令的过程太长了。 PS-我对这些服务器使用“密钥”身份验证 首先,我从windows桌面双击Cygwin终端快捷方式 然后,在终端会话启动后,在命令提示符下键入以下命令- $ eval `ssh-agent` $ ssh-add $ ssh <username>@<servername> $eval`ssh代理` $ssh添加 $ssh@ 请记住

我有多台需要远程访问的服务器。 我更喜欢Cygwin而不是Putty这样做

总之,打开我的酷Mintty窗口,然后键入以下命令的过程太长了。 PS-我对这些服务器使用“密钥”身份验证

首先,我从windows桌面双击Cygwin终端快捷方式

然后,在终端会话启动后,在命令提示符下键入以下命令-

$ eval `ssh-agent`
$ ssh-add
$ ssh <username>@<servername>
$eval`ssh代理`
$ssh添加
$ssh@
请记住,我的“服务器名”是可变的。事实上,我有大约10个不同的服务器名称,可能会插入其中-因此我需要10个不同的快捷方式。我更喜欢双击桌面上的某个东西,它将启动我的Mintty并自动执行上面的bashshell命令

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


(我感觉这与我正在单击的Windows快捷图标的目标属性有关。)

您可以轻松完成此操作。复制现有Cygwin终端图标,右键单击它,然后选择“属性”。您应该在目标字段中看到如下内容:

C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -
将其替换为以下内容(根据需要替换
):

C:\cygwin\bin\mintty.exe-i/cygwin-Terminal.ico/bin/bash-l-C“eval`ssh-agent`;ssh-add;ssh@”
根据需要对其他服务器重复此操作。就这样


(详细信息:我们替换
-
参数[这意味着使用标准的登录shell]通过显式调用bash来运行您的命令。
-l
部分意味着使用登录shell,这尤其意味着设置了
路径
变量,因此bash可以找到
ssh
-c
部分只是介绍了命令,您应该从您的问题中认识到这一点。)

为了完成这一点,我执行了以下步骤:

步骤1:创建一个名为scripts的安装Cygwin的目录

步骤2:在此目录中创建一个名为servername.sh的BASH脚本

步骤3:servername.sh将包含以下内容(一行):

(确保用适当的信息替换user和servername)

步骤4:创建Cygwin终端图标的快捷方式

第五步:粘贴到我想要的地方(在我的桌面上,但是你可以选择你想要放置它的地方)

步骤6:右键单击并重命名我的快捷方式(将其命名为我的服务器名称)

步骤7:右键单击并选择属性

步骤8:在目标属性部分,我有以下代码行-

C:\Cygwin\bin\mintty.exe -e /bin/sh -l -c '/scripts/servername.sh'
并确保您的路径与您的环境匹配

干杯

eval `ssh-agent`;ssh-add;ssh user@servername
C:\Cygwin\bin\mintty.exe -e /bin/sh -l -c '/scripts/servername.sh'