2012-05-11 13 views
9

Soy nuevo en Sublime Text 2 y hay algo que aún no he resuelto, ¿cómo puedo ejecutar un comando bash sobre SSH?Texto sublime 2 - ¿Cómo ejecutar un comando de shell sobre ssh?

Por ejemplo, para ver el registro de erroresApache en mi servidor dev, me gustaría ser capaz de ejecutar:

ssh [email protected] "tail -10 /var/log/httpd-error-user.log" 

En lugar de tener que abrir un terminal, me gustaría ejecuta esto desde el editor con un atajo de teclado.

He leído acerca de build systems, pero no estoy seguro de que sea el camino a seguir, también parece permitir solo un comando.

Respuesta

13

Voy a responder mi propia pregunta. Puede crear fácilmente una construcción que apunta a cualquier secuencia de comandos, por lo que todo lo que tenía que hacer era crear myscript.sh que contiene:

#!/bin/bash 
ssh [email protected] "tail -10 /var/log/httpd-error-user.log" 

y luego crear una nueva construir el sistema en ST2 llamarlo:

{ 
    "cmd": ["./myscript.sh"] 
} 

Nota: en este ejemplo (estoy en Linux), myscript.sh se encuentra en /home/mike/.config/sublime-text-2/Packages/User/

+2

Puede mejorar esto creando un sistema de compilación que funcione de forma genérica. Llamé a la mía '' 'rsync local para remote.sublime-build''' y en ella puse:' '' {"cmd": ["$ project_path/rsync.sh"]} '' '. Eso ejecutará '' 'rsync.sh''' en la raíz de su Sublime Project. entonces puede tener diferentes banderas rsync, servidores y rutas por proyecto. – Arron

2

¿Has probado al Sublime SFTP plugin?

+0

no puede ejecutar comandos en el sublime complemento sftp –

9

Si está en un equipo con Windows, puede intentarlo:

  1. Instalar Putty. Necesitarás plink de este paquete.
  2. Actualice su variable PATH con el directorio de instalación de Masilla.
  3. crear un sistema de construcción en Sublime

    { 
    "cmd": ["plink", "-pw", "<password>", "<userid>@<remotehost>", "./your-script.sh"] 
    } 
    

lo uso para make a distancia, funciona bastante bien.

Nota que su contraseña es texto sin formato aquí. Sé que no es bueno;]. Esto es solo un ejemplo. Para arreglarlo, se puede usar el inicio de sesión basado en claves. Google PuttyGen y autologin.

+0

haciendo a través de SSH era precisamente lo que necesitaba. Gracias :) –

Cuestiones relacionadas