Wget: Есть ли способ передать имя пользователя и пароль из файла?

Есть ли способ передать имя пользователя и пароль из файла вместо командной строки через -user и -password?

Фон: я хочу запустить wget через cron и не хочу, чтобы имя пользователя /пароль отображалось в представлении процесса

21 голос | спросил casper 8 Maypm11 2011, 16:58:27

3 ответа


13

Используйте файл .wgetrc ( руководство GNU ), в котором вы можете установить имя пользователя и пароль для одного или обоих ftp и http.

Чтобы использовать те же учетные данные для обоих параметров, укажите

user=casper
password=CasperPassword

или индивидуально

ftp_user=casperftp
ftp_password=casperftppass
http_user=casperhttp
http_password=casperhttppass
ответил Mike Renfro 8 Maypm11 2011, 17:08:31
15

Я удивлен, что никто не упомянул файл .netrc. Сначала создайте файл, если он не существует, и установите безопасные разрешения:

touch ~/.netrc
chmod 600 ~/.netrc

Затем вы можете добавить имя хоста, имя пользователя и пароль в одну строку:

echo 'machine example.com login casper password CasperPassword' >> ~/.netrc

Затем, когда вы выполняете wget https://example.com, а сервер отвечает 401 Authorization Required, wget будет повторять попытку с именем пользователя и паролем из файла ~/.netrc.

При использовании этого из cron убедитесь, что у вас есть правильный каталог HOME. Часто cron устанавливает HOME=/ (в этом случае вам нужно будет создать файл как /.netrc, но лучше установить правильный HOME в начале вашего скрипта, например export HOME=/root)

Вы можете указать несколько хостов в ~/.netrc, по одному на строку. Дополнительная информация в man netrc.

ответил Paul Tobias 26 FebruaryEurope/MoscowbThu, 26 Feb 2015 13:34:24 +0300000000pmThu, 26 Feb 2015 13:34:24 +030015 2015, 13:34:24
0

Во многих отношениях завиток может быть лучшим выбором. Wget стал немного устаревшим с течением времени.

Для этой задачи можно использовать

curl -n switch:   http://curl.haxx.se/docs/manpage.html#-n

ответил cstamas 8 Maypm11 2011, 19:40:33

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132