pipa ke sudo -E bash -


10

Saya bertanya-tanya apa tujuan memipipkan file yang diunduh curlke sudo -E bash -dalam shell berikut:

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

Jawaban:


10

Ini adalah cara singkat untuk mengeksekusi skrip tanpa harus menyimpan file dan kemudian menjalankannya. Ketika Anda menyimpan file dan kemudian menjalankannya, sejumlah hal bisa salah:

  • Pengguna tidak mengetik nama file dengan benar
  • Pengguna tidak menggunakan shell yang benar (mungkin sh foo.shmalah berlari bash foo.sh)
  • Pengguna mencoba mengeksekusi file alih-alih mengatur bash di atasnya ( ./foo.sh), dan lupa untuk mengatur izin eksekusi
  • Pengguna lupa menggunakan sudo

Dengan menyediakan satu baris perintah untuk dieksekusi, pengembang dapat mengurangi jumlah tempat di mana terjadi kesalahan karena kesalahan luser.

Secara pribadi, saya benci pipa curl untuk bash. Itu tidak aman.


7

Perintah ini akan mengunduh file dan mencoba untuk mengeksekusinya dengan hak akses root.


3
Terima kasih, tetapi apa -Epilihan pilihan dan -di akhir perintah?
Tn. Y

5
@Youssef -Emempertahankan variabel lingkungan (katakan variabel untuk pengaturan proxy) dan -memberitahu bash untuk membaca perintah dari input standar, yaitu pipa.
muru
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.