Я використовую Wget для надсилання запитів на новий веб-сервер. Я роблю це, щоб зігріти кеш MySQL. Я не хочу зберігати файли після їх подання.
wget -nv -do-not-save-file $url
Чи можу я зробити щось на кшталт -do-not-save-file
wget?
Я використовую Wget для надсилання запитів на новий веб-сервер. Я роблю це, щоб зігріти кеш MySQL. Я не хочу зберігати файли після їх подання.
wget -nv -do-not-save-file $url
Чи можу я зробити щось на кшталт -do-not-save-file
wget?
Відповіді:
Використовуйте 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