5

У меня есть несколько серверов, на которых мне нужно удаленно работать. Я предпочитаю Cygwin, чем Putty.

В любом случае - процесс открытия моего классного окна Mintty и последующего ввода следующих команд занимает слишком много времени. PS - Я использую "ключ" аутентификации на этих серверах.

Сначала я дважды щелкаю ярлык Cygwin Terminal на рабочем столе Windows.

Затем, как только сеанс терминала загрузится, в командной строке я наберу следующее:

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

Пожалуйста, имейте в виду, что мое «servername» является переменным. На самом деле у меня есть около 10 разных имен серверов, которые потенциально могут быть вставлены туда - следовательно, мне нужно 10 разных ярлыков. Я бы предпочел дважды щелкнуть что-нибудь на моем рабочем столе, чтобы запустить Mintty и автоматически выполнить вышеупомянутые команды оболочки bash.

Кто-нибудь есть или может порекомендовать хорошее / элегантное решение для этого?

2 ответа2

4

Вам нужно создать сценарий оболочки, а затем создать ярлык, который его вызывает. Сначала скрипт:

#!/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'
0

Есть несколько способов сделать это. Если вам действительно нужно выполнить команды, которые вы перечислили, перед выполнением ssh , поместите эти команды в файл myssh в вашем домашнем каталоге cygwin.

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

Очевидно, поместите имя пользователя, которое вы хотите использовать, где у вас есть <username> .

Затем вы можете запустить это с помощью следующей команды:

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

Конечно, вы можете поместить это в файл BAT.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .