Como faço para FTP vários arquivos da linha de comando?

22

Eu gostaria de fazer o FTP do conteúdo de um diretório, mas não consigo encontrar o caminho certo para usar um curinga. Parece que isso seria algo comum de se fazer; toda a minha abordagem está errada?

O comando é

ftp -s:"C:\Scripts\ftp01" ftpserver.domain.com

O script que é chamado está abaixo. Atualizado por billinkc.

username
password
ascii
cd "/destinationfolder"
lcd "C:\Backup"
mput *.bak
close
quit

O script é iniciado, nenhum arquivo é copiado e a sessão FTP permanece aberta.

230 User username Logged in Successfully
ftp> ascii
200 TYPE Command OK A
ftp> cd "/destinationfolder"
250 Directory successfully changed to "/destinationfolder"
ftp> lcd "C:\Backup"
Local directory now C:\Backup.
ftp> mput *.bak
mput 9829980.bak? close
mput 6406766.bak? quit
ftp>
ftp>

Conclusão

Eu precisava adicionar o sinalizador para suprimir o comando PROMPT:

ftp -i -s:"C:\Scripts\ftp01" ftpserver.domain.com
    
por mmcglynn 16.11.2011 / 15:47

6 respostas

32

Antes de emitir o comando mput , emita um comando prompt para desativar o Modo Interativo. Uma vez desativado, você não deve pedir para confirmar cada arquivo para o mput (ou um mget ).

    
por 16.11.2011 / 16:22
3

Eu nunca tentei usar o nome do caminho para pastas locais, mas eu fiz isso alterando o diretório local ( lcd ):

username
password
ascii
cd "/destinationfolder"
lcd Backup
mput *.bak
close
quit
    
por 16.11.2011 / 16:01
2

Tente inserir a linha prompt n antes da linha mput

    
por 16.11.2011 / 16:28
2

Use o comando mput para colocar vários arquivos.

    
por 16.11.2011 / 15:55
1

Se você tiver direitos de administrador, poderá instalar o ncftpput . É fácil de usar e ótimo para uploads FTP recursivos. O comutador para transferência recursiva é -R .

O software está incluído na maioria das distribuições Linux. Para o Windows, é instalável com o Cygwin .

    
por 16.11.2011 / 23:09
0

Como Tim Haegele mencionou, o ncftp faz isso muito bem no Linux, se você puder e quiser instalá-lo:

sudo apt-get install ncftp
ncftp -R ftpserver.domain.com . /Scripts/ftp01
    
por 25.04.2014 / 18:55