Respostas:
O Wget interpreta <pass>@serveraddresscomo porta. Para especificar um nome de usuário e senha, use as opções --usere --password:
wget --user user --password pass http://example.com/
De man wget:
--user=user
--password=passwordEspecifique o nome de usuário do usuário e senha senha para ambos FTP e recuperação de arquivos HTTP. Esses parâmetros podem ser substituídos usando as opções
--ftp-usere--ftp-passwordpara conexões FTP e as opções--http-usere--http-passwordpara conexões HTTP.
--ask-passwordopção descrita pela resposta de Nabil Kadimi. Você digita a senha invisivelmente em outra linha e evita armazená-la no seu histórico de shell.
Você tem três opções e aqui não há nenhuma ordem específica além da sensação de coragem:
history)wget --user=remote_user --password=SECRET ftp://ftp.example.com/file.ext
A senha também estará visível em ps, top, htop e similares.
wget --user=remote_user --password=SECRET ftp://ftp.example.com/file.ext
Observe o espaço em branco antes do comando, pois evita salvá-lo no seu histórico.
A senha também estará visível em ps, top, htop e similares.
wget --user=remote_user --ask-password ftp://ftp.example.com/file.ext
Password for user `remote_user': [SECRET (not visible)]
--ask-passwordnão está disponível ou você não deseja digitar a senha toda vez, wget -i link.txtpode ajudar, onde link.txtcontémftp://remote_user:SECRET@ftp.example.com/file.ext
Você também pode armazenar o nome de usuário e a senha no arquivo ~/.wgetrc
e alterar as permissões desse arquivo para que somente seu usuário possa lê-lo:
Arquivo ~/.wgetrc:
user=john
password=SEcrEt
... e depois
chmod 600 ~/.wgetrc
Observe, no entanto, que o usuário rootainda pode espiar o arquivo e ler a senha.
Na página de manual :
Para impedir que as senhas sejam vistas, use-as
--use-askpassou armazene-as em.wgetrcou.netrce certifique-se de proteger esses arquivos de outros usuários"chmod". Se as senhas forem realmente importantes, também não as deixe nos arquivos --- edite os arquivos e exclua-os após o início do download do Wget.
Você pode fornecer credencial de autenticação via --user=USERNAMEe --password=PASSWORD; baseado no man wget, o comando pode ser substituído usando o --http-user=USERNAMEe --http-password=PASSWORDpara http conexão eo --ftp-use=USERNAMEe --ftp-password=PASSWORDpara ftp conexão.
O comando poderia ter usado --http-usere em --http-passwordvez de --usere --password. Em caso de ftpsolicitação, as opções são --ftp-usere --ftp-password.
man wgetindica que --user e --password são opções válidas, que podem ser substituídas por --http pelo usuário ou --ftp por senha
wgetpossui opções de linha de comando separadas para elas, portanto, provavelmente está analisando ingenuamente a sequência após o:número da porta.