Я использую Wget для отправки HTTP-запросов на новый веб-сервер. Я делаю это, чтобы согреть кеш MySQL. Я не хочу сохранять файлы после их обслуживания.
wget -nv -do-not-save-file $url
Могу я сделать что-то подобное -do-not-save-file
с wget?
Я использую Wget для отправки HTTP-запросов на новый веб-сервер. Я делаю это, чтобы согреть кеш MySQL. Я не хочу сохранять файлы после их обслуживания.
wget -nv -do-not-save-file $url
Могу я сделать что-то подобное -do-not-save-file
с wget?
Ответы:
Используйте q
флаг для тихого режима и укажите wget
вывод на стандартный вывод с помощью O-
(в верхнем регистре o) и перенаправьте, /dev/null
чтобы отказаться от вывода:
wget -qO- $url &> /dev/null
>
перенаправляет вывод приложения (в файл). если >
предшествует амперсанд, оболочка перенаправляет все выходные данные (ошибки и нормальные) в файл справа от >
. Если вы не укажете амперсанд, будет перенаправлен только нормальный вывод.
./app &> file # redirect error and standard output to file
./app > file # redirect standard output to file
./app 2> file # redirect error output to file
если файл есть, /dev/null
то все отбрасывается.
Это тоже работает, но проще:
wget -O/dev/null -q $url
Curl делает это по умолчанию без каких-либо параметров или флагов, я бы использовал его для ваших целей:
curl $url > /dev/null 2>&1
Curl больше о потоках, а wget больше о копировании сайтов на основе этого сравнения .
>/dev/null
перенаправляет std out на / dev / null ( >/dev/null
это сокращение от 1>/dev/null
), второй перенаправляет std err на std out.
>foo
интерпретируется как 1>foo
. Когда &
следует за перенаправлением, он указывает оболочке перенаправить предыдущий файловый дескриптор на тот же вывод, что и последующий. В этом случае 2>&1
говорит перенаправить файловый дескриптор 2 (std err) в то же место, что и файловый дескриптор 1 (std out). Поскольку std out уже перенаправлен в / dev / null, std err также будет перенаправлен туда. Вы также можете написать: 1>/dev/null 2>/dev/null
или 2>/dev/null >&2
.
curl http://www.example.com
.
Вы можете использовать -O-
(верхний регистр o) для перенаправления содержимого на стандартный вывод (стандартный вывод) или в файл (даже специальные файлы, например /dev/null
/dev/stderr
/dev/stdout
)
wget -O- http://yourdomain.com
Или:
wget -O- http://yourdomain.com > /dev/null
Или: (тот же результат, что и последняя команда)
wget -O/dev/null http://yourdomain.com