2010-08-04 21 views
44

Programa con eclipse y algunas veces uso editores de texto GUI como SciTE o vim. Sin embargo, estoy en un punto de un proyecto que me obliga a editar archivos a través de una conexión ssh en una ventana SSH de 80 columnas.¿Cómo se editan los archivos a través de SSH?

Desde que tengo que (* escalofrío *) sudo vim antes de que pueda abrir el archivo No estoy seguro de cómo abrir el archivo en un editor fuera de la terminal (que me permitirá ver el texto más ancha que 80 columnas). Si la línea de comando era más grande, supongo que usar VIM directo no sería un problema.

No entiendo cómo manejar esta situación y cómo podría convertir esta pesadilla en un entorno de codificación manejable.

+0

Realmente no recibo su pregunta. ¿Desea editar los archivos en una terminal (a través de una conexión ssh)? –

+0

Realmente no entiendo mi pregunta. Hice lo mejor para explicar el problema y espero que alguien pueda dar la respuesta. Básicamente, necesito editar archivos que solo están disponibles a través de SSH, y editarlos dentro de la terminal simplemente no lo está cortando. Quiero editarlos en un editor de GUI apropiado, pero aún así usar la conexión a través de SSH para guardar/abrir. – Xeoncross

+2

Algunas de sus respuestas ("eso me permitiría ver el texto más ancho que 80 columnas", "me permitió usar su increíble terminal que permite cambiar el tamaño") me preguntan: ¿Está SSH-ing dentro del comando de Windows prompt-thing ? (¡ew!) Debo recomendar algo mejor, para cuando estés atrapado en un entorno Windows: "PuTTY": http://www.chiark.greenend.org.uk/~sgtatham/putty/ – Thanatos

Respuesta

72

Tal vez debería simplemente montar el sistema de archivos remoto en su máquina local y luego usar el editor que desee. Si se ejecuta un derivado de Debian, instalar sshfs

sudo apt-get install sshfs 

y luego montar el sistema de archivos remoto (tema en su máquina local)

mkdir ~/remote_code 
sshfs [email protected]:/home/$USER/code ~/remote_code 

Una vez hecho esto se puede acceder al código en ~/remote_code w/cualquiera de sus herramientas GUI y sin la sobrecarga de ancho de banda de usar ssh -X (sin embargo, aún necesita una buena conexión con un tiempo de ping bajo).

PD: Cuando uso ssh puedo hacer que el terminal sea tan ancho como quepa en mi pantalla y luego usar todo su ancho, así que me temo que no entiendo completamente su problema.

+0

Estoy usando Windows, que es terrible en todo lo que es útil (menos Adobe) y el cambio a una máquina virtual de Ubuntu me permitió usar su impresionante terminal que permite cambiar el tamaño! Así que por ahora solo voy a editar archivos con vim, ya que ahora puedo hacer desaparecer ese desagradable envoltorio de línea. ¡También buscaré el montaje del sistema de archivos! – Xeoncross

+1

Me alegra saber que ya tiene una solución para su problema. Cuando use una máquina virtual con Ubuntu, sshfs debería funcionar como lo desea. Si desea utilizar w/Windows, puede instalar las herramientas proporcionadas por Cygwin (http: //www.cygwin.com /) ofreciendo un shell + shell más capaz con un buen cliente ssh, etc. –

+0

Acabo de configurar sshfs y estoy muy contento con él. Intenté mirar el fusible pero no pude entenderlo. – Xeoncross

10

Hay varias opciones.

Puede hacer que el terminal sea más grande. ;)

Si tiene un entorno gráfico instalado en la máquina en la que está ingresando, puede iniciar sesión con ssh -X (o xdeep-putty si está en Windows) para habilitar el reenvío de ventanas. Luego puede ejecutar su editor favorito en la máquina remota, cuya salida gráfica se reenvía.

Finalmente, puede montar la conexión ssh en su sistema de archivos, utilizando por ejemplo fusible (pueden existir opciones similares para sistemas operativos que no sean Linux). Eso le permite acceder a cualquier archivo en la máquina remota como si estuviera en su sistema de archivos, con su editor favorito, localmente.

+0

+1 sí, montaje con FUSE y la edición con tu editor favorito funcionan bien. – neoneye

1

X11 adelante puede ser lento ... ¿a qué sistema operativo se está conectando? Puede probar 'nano' en ubuntu, o 'diakonos' si quiere enlaces de teclas de Windows.

5

No estoy 100% seguro si esto funciona para archivos propiedad de root, pero si su escritorio es KDE & su sistema remoto es Linux (o casi cualquier forma de * nix), puede obtener konqueror para acceder al máquina remota usando el protocolo "fish: //". Desde allí puede abrir el archivo desde konqueror usando kate, o su editor preferido, y konqueror se encargará de copiar el archivo en su máquina local y copiarlo cuando lo guarde.

En su defecto, el X11 forward es una buena opción, pero X11 sobre ssh a sitios remotos puede ser lento. "ssh -X -C" comprime la secuencia de datos y puede proporcionar un mejor rendimiento.

+0

Puedes hacerlo desde el diálogo KDE * Open File * (por ejemplo, en Kate) presionando 'Ctrl-L' y escribiendo' fish: // user @ host: path -to-directory'. – z0r

1

Puede probar el editor Komodo. Tiene una función para cargar un 'archivo remoto' sobre ssh. Es realmente conveniente.

2

Emacs y ange-ftp.

+0

O TRAMP: http://www.emacswiki.org/emacs/TrampMode – user49740

15

WinSCP es un cliente SSH ftp-like. El editor predeterminado es primitivo pero puede cambiarse.

+0

Sí, uso esto con SciTE a menudo. – Xeoncross

2

Yo uso Cyberduck y Sublime Text 2

+0

Sublime cuelga sobre sftp :( – ni3

2

Si estás en Ubuntu, ir a Nautilus (explorador de archivos), conectar con el servidor (la adición de SFTP: // al nombre de host), entonces voila! Puede iniciar fácilmente gedit para editar sus archivos ahora.

3

En Windows, puede usar MobaXterm (http://mobaxterm.mobatek.net): tiene un cliente SSH incorporado con un "navegador SFTP" muy útil.

Tan pronto como se conecte a su servidor remoto utilizando SSH, verá los archivos remotos que se muestran en este navegador gráfico SFTP. Simplemente haga doble clic en sus archivos y podrá editarlos directamente en su servidor remoto a través de SFTP.

0

Las versiones recientes de ultraedit hacen exactamente lo que el PO está pidiendo elegantemente (software IDM, V10 y el apoyo IIRC SSH). Hago la mayor parte de mi codificación de forma remota así, la he estado utilizando durante años, funciona muy bien sin archivos intermedios, etc. Obviamente, también lo hace FTP, si así lo desea.

De hecho encontré esta página mientras buscaba un equivalente de Linux de Ultraedit ..

Cuestiones relacionadas