Se você quiser evitar o armazenamento do nome de usuário e senha no próprio script, poderá criar uma entrada para o host de destino em ~/.netrc
com o seguinte formato:
machine <address>
login <username>
password <password>
onde você substitui <address>
, <login>
e <password>
pelo endereço do host, nome de usuário e senha, respectivamente. Você também deve certificar-se de que ~/.netrc
tenha permissões adequadas (isto é, somente legível e gravável pelo proprietário). Essa abordagem tem a vantagem de as credenciais serem armazenadas em um único local, que pode ser acessado a partir de vários scripts. Também é mais fácil garantir que ~/.netrc
tenha permissões adequadas do que gerenciar permissões para todos scripts que possam precisar usar as credenciais.
Você pode passar os comandos para ftp
por meio de um aqui documento ou use lftp
com a opção -c
para passar os comandos como comando argumentos de linha. Observe que, se você optar pelo primeiro, não deverá especificar a opção -n
como ftp
, pois isso desativará o login automático usando as credenciais armazenadas em ~/.netrc
.