Automatize o upload de arquivos no FileZilla usando um script [duplicado]

3

Considere:

D:\Program Files\FileZilla FTP Client\filezilla.exe -c 0/GG/DG/ -a "K:\YY\XXXXX\AAAA\BB\idS.txt"

Este código não funciona como diz:

"PATH NOT FOUND" K:\YY\XXXXX\AAAA\BB\idS.txt

No entanto

D:\Program Files\FileZilla FTP Client\filezilla.exe -c 0/GG/DG/ -a "K:\YY\XXXXX\AAAA\BB"

apenas se conecta ao site FTP que eu desejava sem que nenhum arquivo fosse transferido.

Por que não está funcionando?

    
por user295071 31.01.2014 / 19:25

2 respostas

12

O FileZilla não possui argumentos de linha de comando (nem de outra forma) que permitam a transferência automática. Veja:
Argumentos da linha de comando do FileZilla Client
link
Como faço para enviar um arquivo com FileZilla da linha de comando?

Embora você possa usar qualquer outro cliente que permita automação. Você não especificou qual protocolo está usando, o FTP ou o SFTP.

Você definitivamente será capaz de usar o WinSCP, pois suporta todos os protocolos que o FileZilla faz (e mais).

Veja link

O script típico do WinSCP para upload parece com:

open sftp://user:[email protected]/ -hostkey="ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx:xx..."
put c:\mypdfs\*.pdf /home/user/
exit

Para executar o script, use:

WinSCP.com /log=ftp.log /script=script.txt

Isto é para SFTP. Se você estiver usando FTP, basta substituir o sftp:// pelo ftp:// e remover o -hostkey=...

O WinSCP 5.9 pode gerar um script de um importou a sessão do FileZilla .

Para detalhes, consulte o guia de automação do FileZilla .

(eu sou o autor do WinSCP)

Outra opção, se você estiver usando SFTP, é o cliente psftp: link

    
por 25.07.2014 / 09:34
1

-a informa ao cliente FileZilla onde os arquivos locais funcionam. Ou seja, é onde os arquivos devem ser baixados ou enviados por padrão (se nenhum caminho específico for usado no próprio comando de transferência).

Espera-se um caminho para uma pasta.

De a documentação do FileZilla :

-a, --local=

Sets the local site (left-hand side) to the given path.

Use double quotation for paths with spaces in them.

O FileZilla não deve ser roteirizado (seu objetivo é ser um cliente gráfico), então não há como especificar arquivos para serem transferidos da linha de comando.

Talvez procure usar o FTP.exe embutido do Windows para scripts.

De ftp /? :

Transfers files to and from a computer running an FTP server service
(sometimes called a daemon). Ftp can be used interactively.

FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:recvbuf
fer] [-b:asyncbuffers] [-w:windowsize] [host]

  -v              Suppresses display of remote server responses.
  -n              Suppresses auto-login upon initial connection.
  -i              Turns off interactive prompting during multiple file
                  transfers.
  -d              Enables debugging.
  -g              Disables filename globbing (see GLOB command).
  -s:filename     Specifies a text file containing FTP commands; the
                  commands will automatically run after FTP starts.
  -a              Use any local interface when binding data connection.
  -A              login as anonymous.
  -x:send sockbuf Overrides the default SO_SNDBUF size of 8192.
  -r:recv sockbuf Overrides the default SO_RCVBUF size of 8192.
  -b:async count  Overrides the default async count of 3
  -w:windowsize   Overrides the default transfer buffer size of 65535.
  host            Specifies the host name or IP address of the remote
                  host to connect to.

Notes:
  - mget and mput commands take y/n/q for yes/no/quit.
  - Use Control-C to abort commands.
    
por 31.01.2014 / 19:38