Estou conectado a um host via ssh
e gostaria de comparar (digamos com diff
) um determinado arquivo de configuração com o de outro servidor, também acessível via ssh
, sem precisar baixar manualmente o arquivo remoto antes de executar o diff.
39
SSHFS
e acessá-lo como se fosse local.Respostas:
Fonte
fonte
cat
, que na verdade são apenas o arquivo original?ssh
comando remoto para odiff
que está aguardando para compararstdin
com o arquivo local.Experimentar:
ou usando
vimdiff
:fonte
diff local_file <(ssh user@server 'cat remote_file')
apenas para SSH sem senha? Parece que não consigo obter um prompt de senha com ele ...cat <(ssh user@server 'cat remote_file')
ecat < <(ssh user@server 'cat remote_file')
veja as diferenças.Talvez isso não seja útil no seu caso exato, mas geralmente uso
em cada máquina e compare manualmente as somas de verificação. Isso permite comparações de arquivos, mesmo quando eles não são acessíveis através de uma conexão ssh. Obviamente, tudo o que ela responde é "eles são idênticos", mas geralmente isso é suficiente para minhas necessidades. Também facilita verificar se um único arquivo é igual em 3 ou 4 ou mais máquinas.
fonte
cat
para executar ocat
comando apenas quando for determinado que os arquivos diferem.info coreutils 'sum invocation'
diz, inter alia: "'sum' é fornecido para compatibilidade; o programa 'cksum' (consulte a próxima seção) é preferível em novos aplicativos".Se você preferir uma abordagem mais visual na sua sessão terminal. O comandante da meia-noite possui uma opção de sistema de arquivos remoto (opção SFTP link ... no menu) e uma opção de comparação visual de arquivos. Ele não é instalado por padrão na maioria dos sistemas Linux, mas está disponível na maioria dos repositórios base. Passos:
mc
:) na pasta que contém o arquivo a ser comparadosftp://<user>@<servername>/<path>
).ins
tecla, selecione / realce os arquivos a serem comparados. (tab
muda entre os painéis esquerdo e direito).Nota: O menu do comandante da meia-noite geralmente pode ser acessado usando o mouse na sua sessão do terminal. Se não funcionar,
F9
você também fica no menu.fonte