Gostaria de enviar por FTP o conteúdo de um diretório, mas não consigo encontrar a maneira correta de 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 inicia, 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
ftp
command-line
mmcglynn
fonte
fonte
prompt
comando", literalmente basta digitar "prompt" e alterna entre "verdadeiro" e "falso".-i
sinalizador noftp
próprio comando (por exemploftp -i -s:"C:\Scripts\ftp01" ftpserver.domain.com
). Os documentos descrevem a-i
opção como: "Desativa o prompt interativo durante várias transferências de arquivos".Nunca tentei usar o nome do caminho para pastas locais, mas o fiz alterando o diretório local (
lcd
):fonte
Tente inserir a linha
prompt n
imediatamente antes damput
linhafonte
Use o
mput
comando para colocar vários arquivos.fonte
ftp
Windows incorporado não suporta o modo PASV, portanto, a transferência será interrompida e nunca será concluída.Se você possui direitos de administrador, pode instalar o ncftpput . É fácil de usar e ótimo para uploads recursivos de FTP. A opção para transferência recursiva é
-R
.O software está incluído na maioria das distribuições Linux. Para Windows, é instalável com Cygwin .
fonte
Como Tim Haegele mencionou, o ncftp faz isso muito bem no Linux, se você estiver apto e disposto a instalá-lo:
fonte
Este é o script que eu usei e que funcionou para mim.
Para ftp1.bat (script):
Para ftp.txt (script):
Talvez haja peças que não são necessárias, mas estou colocando como funcionou para mim, espero que ajude
fonte