Điểm:0

Tại sao sử dụng tee với wget? Không phải là nó thừa?

lá cờ in

Vì vậy, tôi đã tìm thấy mã này để tải xuống youtube-dl bằng cách sử dụng wget which pipe to tee tại đây: Làm cách nào để cập nhật youtube-dl?

Mã là:

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

Sự khác biệt khi so sánh với những điều sau đây là gì?:

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

hoặc thậm chí cho vấn đề đó:

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

Có điều gì đặc biệt về việc sử dụng wget với tee mà tôi đang thiếu ở đây không? Nếu tôi hiểu chính xác thì trước đây chỉ cần tải xuống các tệp và xuất các tệp đang được tải xuống thành đầu ra tiêu chuẩn, sau đó được chuyển qua tee vào tệp được chỉ định cũng như đầu ra tiêu chuẩn với bất kỳ đầu ra tiêu chuẩn bổ sung nào được chuyển hướng đến/dev/null. Không phải chuỗi mã trước đây là thừa và quá phức tạp khi hai mã sau hoàn toàn đủ sao?

Một câu hỏi nữa khi về chủ đề sử dụng tee như thế này:

Về mặt lý thuyết, người ta có thể thay thế tee bằng mèo không? Như thế này:

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

hoặc cái này:

wget -O - https://yt-dl.org/downloads/latest/youtube-dl | con mèo sudo /usr/local/bin/youtube-dl

Khi tôi làm điều đầu tiên, tôi nhận được kết quả này (tôi chỉ lấy ba dòng cuối cùng):

Đang lưu vào: âSTDOUTâ
- 0%[ ] 0 --.-KB/s trong 0,003 giây  
Không thể ghi vào â-â (Thành công).

Và khi tôi thực hiện thao tác sau, tôi nhận được kết quả tương tự mà không có thông báo "Không thể ghi vào â-â (Thành công)."

Cảm ơn rất nhiều trước cho bất kỳ lời giải thích!

Keith5001 avatar
lá cờ pw
youtube-dl -U sẽ cập nhật
lá cờ hr
Khi bạn làm `| sudo cat >file`, `cat` được chạy với các đặc quyền nâng cao nhưng chuyển hướng (là phần yêu cầu chúng) thì không. Khi bạn như vậy `| sudo cat file` bạn đang ghi nội dung của `file` vào đầu ra tiêu chuẩn, thay vì ghi đầu vào tiêu chuẩn của `cat` vào `file`.
mysterium avatar
lá cờ in
@steeldriver, cảm ơn vì lời giải thích. Tôi nên viết nó ra như thế nào nếu tôi muốn chuyển hướng có các đặc quyền nâng cao?
Điểm:3
lá cờ in

Sự khác biệt là bạn không thực hiện quên đi với các đặc quyền nâng cao. Nó cho phép bạn giảm bề mặt tấn công.

  • | sudo tee lệnh thực thi quên đi với các đặc quyền thông thường và chỉ sử dụng các đặc quyền nâng cao để ghi dữ liệu vào một tệp đã chọn.
  • Với sudo wget, quên đi các lỗ hổng có thể bị khai thác với các đặc quyền nâng cao.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.