Como obter uma listagem de diretórios de ftp recursiva sem permissões de gravação?

1

Eu sei que posso executar ls * no servidor ftp e obter tudo, mas há muito para o meu terminal (centenas de páginas até agora). usando ls * > myfile não é uma opção porque não tenho permissão para escrever. Então, eu preciso de uma maneira de fazer isso no terminal, algo como: ftp ftp://site.com

Eu li as man pages, mas não quero me arriscar aqui. Eu não tenho permissão pessoal para modificar este servidor, mas o usuário que me foi dado pode ter permissões de gravação.

Eu preciso exportar isso para qualquer formato local para que eu possa revisá-lo ao longo do tempo, pois há um lote de saída.

    
por TenLeftFingers 22.06.2015 / 15:44

3 respostas

2

Aparentemente você pode enviar um comando diretamente para ftp :

echo "ls *" | ftp hostname > ls.txt

Certifique-se de citar ls * de alguma forma ou de desativar o globbing; caso contrário, * expandirá no shell atual.

    
por kos 22.06.2015 / 23:28
2

Uma boa opção pode ser canalizar a saída em menos:

ls * | less

Em seguida, você deve ser capaz de navegar pelas páginas de saída sem precisar de permissões de gravação de arquivos.

    
por Arronical 22.06.2015 / 15:54
1

E sobre:

 ncftpls -R ftp://site.com

Bom comando, projetado exatamente para esse propósito

    
por Phil Lord 20.11.2017 / 23:54