Итак, я наткнулся на этот код для загрузки youtube-dl с помощью wget, который подключается к tee: Как я могу обновить youtube-dl?
Код:
wget -O - https://yt-dl.org/downloads/latest/youtube-dl | sudo tee /usr/local/bin/youtube-dl >/dev/null
В чем разница при сравнении со следующим?:
sudo wget -P /usr/local/bin/ https://yt-dl.org/downloads/latest/youtube-dl
или даже в этом отношении:
sudo wget -O /usr/local/bin/youtube-dl https://yt-dl.org/downloads/latest/youtube-dl
Есть ли что-то особенное в использовании wget с tee, чего мне здесь не хватает?
Если я правильно понял, первый просто загружает файлы и выводит загружаемые файлы на стандартный вывод, который затем передается через tee в указанный файл, а также на стандартный вывод, при этом любой дополнительный стандартный вывод перенаправляется на /dev/null. Не является ли первая строка кода излишней и чрезмерно сложной, когда двух последних вполне достаточно?
Еще один вопрос по поводу использования тройника вот так:
Можно ли теоретически также заменить тройник на кошку? Как это:
wget -O - https://yt-dl.org/downloads/latest/youtube-dl | sudo cat >/usr/local/bin/youtube-dl
или это:
wget -O - https://yt-dl.org/downloads/latest/youtube-dl | sudo cat /usr/local/bin/youtube-dl
Когда я делаю первое, я получаю этот вывод (я взял только последние три строки):
Сохранение в: «STDOUT».
- 0%[ ] 0 --.-КБ/с за 0,003 с
Не удается написать -â (Успех).
И когда я делаю последнее, я получаю тот же результат только без «Невозможно записать в -â (Успех)».
Заранее спасибо за любое объяснение!