Puncte:0

De ce să folosiți tee cu wget? Nu este de prisos?

drapel in

Așa că am dat peste acest cod pentru descărcarea youtube-dl folosind wget care se îndreaptă în tee aici: Cum pot actualiza youtube-dl?

Codul fiind:

wget -O - https://yt-dl.org/downloads/latest/youtube-dl | sudo tee /usr/local/bin/youtube-dl >/dev/null

Care este diferența în comparație cu următoarele?:

sudo wget -P /usr/local/bin/ https://yt-dl.org/downloads/latest/youtube-dl

sau chiar și pentru asta:

sudo wget -O /usr/local/bin/youtube-dl https://yt-dl.org/downloads/latest/youtube-dl

Există ceva special despre folosirea wget cu tee care îmi lipsește aici? Dacă am înțeles corect, primul pur și simplu descarcă fișierele și scoate fișierele descărcate în ieșirea standard, care este apoi introdusă prin tee în fișierul desemnat, precum și în ieșirea standard, cu orice ieșire standard suplimentară fiind redirecționată către /dev/null. Nu este primul șir de cod de prisos și excesiv de complicat atunci când ultimele două sunt complet suficiente?

Încă o întrebare când este vorba despre utilizarea unui tricou ca acesta:

Teoretic, nu se poate înlocui și tee-ul cu pisica? Ca aceasta:

wget -O - https://yt-dl.org/downloads/latest/youtube-dl | sudo cat >>/usr/local/bin/youtube-dl

sau asta:

wget -O - https://yt-dl.org/downloads/latest/youtube-dl | sudo cat /usr/local/bin/youtube-dl

Când fac primul, primesc această ieșire (am luat doar ultimele trei linii):

Se salvează în: âSTDOUTâ
- 0%[ ] 0 --.-KB/s în 0,003s  
Nu se poate scrie la â-â (Succes).

Și când fac asta din urmă, obțin aceeași ieșire doar fără „Nu pot scrie în â-â (Succes)."

Multumesc anticipat pentru orice explicatie!

Keith5001 avatar
drapel pw
youtube-dl -U va face o actualizare
drapel hr
Când faci `| sudo cat >fișier`, `cat` este rulat cu privilegii ridicate, dar redirecționarea (care este partea care le necesită) nu este. Când tu atât de `| sudo cat file` scrieți conținutul `fișierului` la ieșirea standard, în loc să scrieți intrarea standard a `cat` în `fișier`.
mysterium avatar
drapel in
@steeldriver, mulțumesc pentru explicație. Cum ar trebui să o scriu dacă aș dori ca redirecționarea să aibă privilegii ridicate?
Puncte:3
drapel in

Diferența este că nu executați wget cu privilegii ridicate. Vă permite să micșorați suprafața de atac.

  • | sudo tee comanda se execută wget cu privilegii obișnuite și folosește privilegii ridicate doar pentru a scrie date într-un fișier selectat.
  • Cu sudo wget, wget vulnerabilitățile pot fi exploatate cu privilegii ridicate.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.