Estou surpreso que ninguém tenha mencionado o arquivo .netrc
. Primeiro, crie o arquivo se ele não existir e defina permissões seguras:
touch ~/.netrc
chmod 600 ~/.netrc
Você pode adicionar o nome do host, nome de usuário e senha em uma única linha:
echo 'machine example.com login casper password CasperPassword' >> ~/.netrc
Então, quando você executar wget https://example.com
e o servidor responder com 401 Authorization Required
, o wget tentará novamente com o nome de usuário e senha do arquivo ~/.netrc
.
Ao usar isso do cron, certifique-se de ter o diretório HOME
correto. Muitas vezes, o cron define HOME=/
(nesse caso, você teria que criar o arquivo como /.netrc
, mas é melhor definir um HOME
adequado no início do seu script, como export HOME=/root
).
Você pode especificar vários hosts em ~/.netrc
, um por linha. Mais informações em man netrc
.