Actualmente lo estoy haciendo mediante SSHing en un servidor y ejecutando Vim en el servidor. Esto tiene el beneficio de no tener que lidiar con la engorrosa sintaxis de abrir archivos desde un servidor remoto a través de SCP y, lo que es más importante, poder navegar realmente rápidamente por el sistema de archivos del servidor. Por otro lado, tiene retraso, lo que dificulta la edición.
¿Cuál es la forma canónica de editar muchos archivos remotos?
networking
files
vim
jcora
fuente
fuente
vim
muestra un retraso, esto probablemente apunta a un problema con su red en lugar de su flujo de trabajo.ssh [email protected] vim /etc/somefile
(tenga en cuenta la ausencia de;
).Respuestas:
Puede usar SSHFS para montar una casa remota en una carpeta local. Tiene la ventaja de utilizar la infraestructura actual y la baja latencia de vim local.
fuente
Puede editar de forma remota con un vim local o gvim.
scp
Es un protocolo de copia segura . Se autentica de la misma manera quessh
, por lo que su clave ssh debe estar disponible, etc. Hay varios otros protocolos compatibles (ver:help netrw-externapp
), pero scp es probablemente el más fácil si ya está utilizando ssh en el mismo lugar.Puede buscar directorios de esta manera, solo asegúrese de que la ruta termine con un
/
. De lo contrario, vim lo convierte en un nuevo archivo.:w
escribe automáticamente el archivo a través de scp. Si la escritura falla por alguna razón, debe notarlo, ya que será un tipo de "shell devuelto 1" en la barra de estado. Sin embargo, tenga cuidado: si no lo nota, vim no lo sabe y eso puede tener consecuencias; por ejemplo, si ahora deja de fumar, no se lo advertirá. Es particularmente fácil perderse esto si usa:wa
mucho; Esa es la única advertencia que tengo.Para los documentos oficiales, ver
:help netrw
.fuente
Yo usaría rsync. Transfiere solo lo que cambió. Al igual que:
luego edite los archivos localmente a su propio ritmo. Cero retraso. Puedes inspeccionar todos los archivos antes de comprometerlos:
Supongo que primero creas tu directorio local y
cd
en eso. También puede hacer que maneje la eliminación de archivos, pero tenga mucho cuidado con eso, porque ejecutar eso en el directorio incorrecto podría destruir un árbol de directorios completo.Lo que hago es ejecutarlo primero en "modo seco", usando la bandera 'n', así:
Informará lo que habría hecho, si fuera real. Si estoy satisfecho con la lista informada, la vuelvo a ejecutar y elimino la bandera 'n'.
rsync es muy eficiente. Hay varias otras banderas también. Es bastante sofisticado.
fuente
Puede ser nombrado de la manera más apropiada: SSH, pero aún dependiendo de la naturaleza de los archivos editados, puede asignar una pequeña partición, compartirla y colocar los archivos allí, por supuesto si la política de seguridad permite esta acción. Para esta sugerencia, puede usar NFS o Samba con mayor facilidad, pero aún así editar el archivo de prueba es una concepción general en UNIX y es posible que deba mantenerlo de la manera en que lo hace actualmente.
fuente