Есть ли способ передать имя пользователя и пароль из файла вместо командной строки через --user и --password?
Справочная информация: я хочу запустить wget через cron и не хочу, чтобы имя пользователя / пароль отображалось в процессе просмотра
password
wget
credentials
user-accounts
Casper
источник
источник
-i
опцию и вводить имя пользователя и пароль из стандартного ввода..wgetrc
Обеспечивает ли гибкость работы более чем с одним сервером? Если нет, то.netrc
это лучшее решение, см. Другой ответ от tobias.pal.netrc
файл, но это задокументировано .Я удивлен, что никто не упомянул
.netrc
файл. Сначала создайте файл, если он не существует, и установите безопасные разрешения:Затем вы можете добавить имя хоста, имя пользователя и пароль в одну строку:
Затем, когда вы это сделаете,
wget https://example.com
и сервер401 Authorization Required
ответит, wget повторит попытку с именем пользователя и паролем из~/.netrc
файла.При использовании этого от cron убедитесь, что у вас есть правильный
HOME
каталог. Часто наборы cronHOME=/
(в этом случае вы должны будете создать файл как/.netrc
, но лучше установить правильныйHOME
в начале вашего скрипта, напримерexport HOME=/root
).Вы можете указать несколько хостов
~/.netrc
, по одному на строку. Больше информации вman netrc
.источник
.netrc
см. В его руководстве или в соответствующем документе curl .man netrc
в ОП, интересно, ПОЧЕМУ это работает, затем @ryenus твой комментарий спасает меня, спасибо ~ Руководство всегда приветствуется: P Тогда я знаю, что это rc-файл, используемыйftp
, то есть он может не работает для http. Я попробую это на http позже.Во многих отношениях локон может быть лучшим выбором. Wget стал немного устаревшим со временем.
Переключатель curl -n можно использовать для этой задачи: http://curl.haxx.se/docs/manpage.html#-n
источник