ống để sudo -E bash -


10

Tôi đã tự hỏi mục đích của việc tải tập tin đã tải xuống curlvào sudo -E bash -trong trình bao sau đây là gì:

curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -

Câu trả lời:


10

Đó là một cách ngắn để thực thi một tập lệnh mà không phải lưu tệp và sau đó thực thi nó. Khi bạn lưu tệp và sau đó thực thi nó, một số điều có thể sai:

  • Người dùng không nhập đúng tên tệp
  • Người dùng không sử dụng shell chính xác (có thể chạy sh foo.shthay vì bash foo.sh)
  • Người dùng đã cố thực thi tệp thay vì đặt bash trên nó ( ./foo.sh) và quên đặt quyền thực thi
  • Người dùng quên sử dụng sudo

Bằng cách cung cấp một dòng lệnh duy nhất để thực thi, các nhà phát triển có thể giảm số lượng vị trí có thể xảy ra lỗi do lỗi luser.

Cá nhân, tôi coi thường đường ống uốn cong để bash. Nó không an toàn.


7

Lệnh này sẽ tải xuống tệp và cố gắng thực thi nó với quyền root.


3
Cảm ơn bạn, nhưng con rối của -Etùy chọn và -ở cuối lệnh là gì?
ÔngY

5
@Youssef -Ebảo tồn các biến môi trường (nói các biến cho cài đặt proxy) và -yêu cầu bash đọc các lệnh từ đầu vào tiêu chuẩn, tức là đường ống.
muru
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.