Я використовую Wget для надсилання запитів на новий веб-сервер. Я роблю це, щоб зігріти кеш MySQL. Я не хочу зберігати файли після їх подання.
wget -nv -do-not-save-file $url
Чи можу я зробити щось на кшталт -do-not-save-filewget?
Я використовую Wget для надсилання запитів на новий веб-сервер. Я роблю це, щоб зігріти кеш MySQL. Я не хочу зберігати файли після їх подання.
wget -nv -do-not-save-file $url
Чи можу я зробити щось на кшталт -do-not-save-filewget?
Відповіді:
Використовуйте qпрапор для спокійного режиму і скажіть wgetдля виведення на stdout з O-(великим регістром o) та переадресації на, /dev/nullщоб відкинути вихід:
wget -qO- $url &> /dev/null
>перенаправляє вихід програми (до файлу). якщо >передує "ampersand", оболонка перенаправляє всі виходи (помилка та нормальність) праворуч від файлу >. Якщо ви не вказали ampersand, то буде переспрямовано лише нормальний вихід.
./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 до / dev / null ( >/dev/nullскорочується 1>/dev/null), другий перенаправляє std помиляється на std.
>fooтрактується як 1>foo. Коли &слідує за переадресацією, вона вказує оболонці перенаправити колишній дескриптор файлу на той же вихід , що і пізніше. У цьому випадку 2>&1дескриптор файлу 2 перенаправляє (std помилка) на те саме місце, що і дескриптор файлу 1 (виходить std). Оскільки std out вже переспрямовано на / dev / null, std помилка також буде переспрямована туди. Ви також можете написати: 1>/dev/null 2>/dev/nullабо 2>/dev/null >&2.
curl http://www.example.comдостатньо.
Ви можете використовувати -O-(великі регістри o) для переадресації вмісту на stdout (стандартний вихід) або на файл (навіть спеціальні файли на зразок /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