Por que algo complicado? O seguinte deve funcionar bem ..
ssh server "cat /path/to/file"
Se você quiser paginação ...
ssh server "cat /path/to/file" |less
Eu preciso ler um arquivo remoto com logs de um host remoto via SSH. Qual é a maneira mais conveniente de fazer isso se eu tiver acesso ssh à pasta de log?
Por que algo complicado? O seguinte deve funcionar bem ..
ssh server "cat /path/to/file"
Se você quiser paginação ...
ssh server "cat /path/to/file" |less
Eu uso:
ssh -t user@host "less ~/path/to/log.file"
O -t
faz com que o ssh aloque um terminal, o que permite interagir com less
como se estivesse sendo executado localmente, incluindo pesquisa / rolagem / rejeição, tudo sem transmitir todo o arquivo remoto para o computador local. / p>
O mais conveniente eu diria que é sshfs .
Vi, nano, menos, etc.
Eu acho que você definitivamente deveria usar um programa no host remoto e abrir o arquivo lá, em vez de baixar o arquivo e abrir no lado do cliente / seu lado.
Até onde eu sei, ferramentas de edição / leitura do Linux como 'vi' ou 'menos' lêem o arquivo linha por linha, portanto você não precisa abrir o arquivo de log inteiro, basta abrir as partes e transferi-las através de ssh enquanto você lê. Outros sistemas operacionais têm programas similares, mas não consigo lembrar o nome de nenhum deles.
Não sei se existe uma maneira de carregar o arquivo parte-por-parte para um leitor de cliente no SSH.
Seguindo o que a Warner sugeriu, mas atendendo ao fato de que os arquivos de log podem ser bem grandes:
ssh server "tail -n 300 /path/to/log" | less
Dará as últimas 300 linhas para a página, em vez do arquivo de log inteiro.
Tags ssh remote-access