Cygwin ssh ярлык от рабочего стола Windows
У меня есть несколько серверов, которые мне нужно удалять.
Я предпочитаю Cygwin над Putty сделать это.
Anyhows - процесс открытия моего прохладного окна Mintty, а затем ввод следующих команд занимает слишком много времени.
PS - Я использую "ключевую" аутентификацию на этих серверах.
Во-первых, я дважды нажимаю на ссылку Cygwin Terminal на рабочем столе Windows.
Затем, как только сеанс терминала загрузился, из командной строки введите следующее:
$ eval `ssh-agent`
$ ssh-add
$ ssh <username>@<servername>
Пожалуйста, имейте в виду, что мое "имя сервера" является переменной. На самом деле у меня есть около 10 разных имен серверов, которые потенциально могут быть вставлены туда. Следовательно, мне нужно 10 различных ярлыков. Я бы предпочел дважды щелкнуть что-нибудь на своем рабочем столе, чтобы запустить мой Mintty и автоматически выполнить приведенные выше команды оболочки bash.
Кто-нибудь есть или может порекомендовать хорошее/элегантное решение для этого?
(У меня такое ощущение, что оно имеет какое-то отношение к атрибуту Target значка короткой вырезки Windows, на который я нажимаю.)
Ответы
Ответ 1
Для этого я сделал следующие шаги:
Шаг 1: Создал каталог, в котором я установил Cygwin, называемый скриптами
Шаг 2: В этом каталоге создан BASH script имя servername.sh
Шаг 3: servername.sh будет иметь следующее содержимое (одна строка):
eval `ssh-agent`;ssh-add;ssh [email protected]
(убедитесь, что вы заменили имя пользователя и servername соответствующей информацией)
Шаг 4: Создал ярлык значка терминала Cygwin
Шаг 5. Вставьте его туда, где я этого хотел (на моем рабочем столе, но вы можете выбрать, где вы хотите разместить его).
Шаг 6: щелкните правой кнопкой мыши и переименуйте мой ярлык (назовите его имя моего сервера)
Шаг 7: Щелкните правой кнопкой мыши и выберите "Свойства"
Шаг 8: В разделе "Целевые атрибуты" у меня есть следующая строка кода -
C:\Cygwin\bin\mintty.exe -e /bin/sh -l -c '/scripts/servername.sh'
И убедитесь, что ваши пути совпадают с вашей средой!
Приветствия.
Ответ 2
Вы можете сделать это без особых трудностей. Скопируйте существующий значок терминала Cygwin, щелкните его правой кнопкой мыши и выберите "Свойства". Вы должны увидеть что-то вроде ниже в поле Target:
C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -
Замените это следующим (заменяя <username>
и <servername>
как релевантные):
C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico /bin/bash -l -c "eval `ssh-agent` ; ssh-add ; ssh <username>@<servername>"
Повторите, если это необходимо для других серверов. Что это!
(Подробно: мы заменим аргумент -
[который означает использование стандартной оболочки входа] с явным вызовом bash для запуска ваших команд. Часть -l
означает использование оболочки входа, которая в в частности, ваша переменная PATH
настроена и поэтому bash может найти ssh
. Часть -c
просто вводит команду, которую вы должны распознать из своего вопроса.)