cygwin ssh atalho no ambiente de trabalho do windows

5

Eu tenho vários servidores nos quais preciso estar remoto. Eu prefiro o Cygwin ao Putty para fazer isso.

Anyhows - o processo de abrir minha janela Mintty e digitar os seguintes comandos leva muito tempo. PS - Estou usando uma autenticação de "chave" para esses servidores.

Primeiro, dou um duplo clique no atalho do Terminal Cygwin na área de trabalho do Windows.

Em seguida, uma vez que a sessão de terminal foi inicializada, no prompt de comando eu digite o seguinte -

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

Por favor, tenha em mente que o meu 'servername' é variável. Na verdade eu tenho cerca de 10 nomes de servidores diferentes que poderiam ser inseridos lá - daí a minha necessidade de 10 atalhos diferentes. Eu preferiria clicar duas vezes em algo da minha área de trabalho que ativaria o meu Mintty e executaria automaticamente os comandos do bash shell acima.

Alguém tem ou pode recomendar uma solução legal / elegante para fazer isso?

    
por Alex Berkoff 31.08.2012 / 01:02

2 respostas

4

Você precisa criar um script de shell e, em seguida, ter um atalho que o chama. Primeiro, o script:

#!/bin/bash

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

Salve isso como algo como: ~ / bin / CygwinMinttySsh.sh

Verifique se o script é executável: chmod a + rx ~ / bin / CygwinMinttySsh.sh

Em seguida, crie um novo atalho para C: \ cygwin \ bin \ mintty.exe, clique com o botão direito nele e selecione "properties" e altere o destino para:

C:\cygwin\bin\mintty.exe -e /bin/sh -l -c '$HOME/bin/CygwinMinttySsh.sh'
    
por 31.08.2012 / 01:32
0

Na verdade, existem algumas maneiras para você fazer isso. Se você realmente precisar executar os comandos listados antes de executar o ssh , coloque esses comandos em um arquivo chamado myssh em seu diretório inicial do cygwin.

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

Obviamente, coloque o nome de usuário que você deseja usar, onde você tem <username> .

Você pode executar isso usando o seguinte comando:

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

Você pode colocar isso em um arquivo BAT.

    
por 31.08.2012 / 01:41