Era uma vez eu me lembro de fazer algo mais ou menos assim:
vimdiff <(scp://some_server/home/user/.zshrc) <(scp://some_server-qa/home/user/.zshrc)
(onde some_server
e some_server-qa
são definidos em my ~/.ssh/config
com usuário e chave e assim por diante, então não é necessário incluir isso no shell).
O problema é que não consigo descobrir qual sintaxe é necessária para fazer isso funcionar e não consegui encontrar nada pesquisando no Google. Tenho certeza que alguém aqui sabe o que estou perdendo. o que estou perdendo?
vim
suporta a abertura de arquivos remotos com alguns URLs, então você pode apenas fazer:Digite
:h scp
dentrovim
para a documentação.Se esse suporte não tiver sido ativado no momento da compilação, você sempre poderá fazer:
Embora você não possa modificar os arquivos remotos.
O
-R
é tornarvim
somente leitura como um lembrete de que é inútil editar esses arquivos (embora você sempre possa fazer::w !ssh host 'cat > file'
enviar o arquivo editado de volta (ou apenas:w !ssh host '>file'
se o seu shell de loginhost
também estiverzsh
onde$NULLCMD
estácat
por padrão)).Como sempre, a resposta de Stéphane é magistral. Este é um mero adendo. Se você achar isso útil, por favor, dê um upvote na resposta dele também.
Não consegui (por qualquer motivo) fazer o
scp://
esquema funcionar com meus sistemas, mas osftp://
esquema funcionou para mim: