Node.js sangat populer hari ini dan saya telah menulis beberapa skrip di atasnya. Sayangnya, kompatibilitas adalah masalah. Secara resmi, interpreter Node.js seharusnya dipanggil node, tetapi Debian dan Ubuntu mengirim eksekutabel yang dipanggil nodejs.
Saya ingin skrip portabel yang dapat digunakan Node.js dalam situasi sebanyak mungkin. Dengan asumsi nama file adalah foo.js, saya benar-benar ingin skrip berjalan dalam dua cara:
./foo.jsmenjalankan skrip jika adanodeataunodejsada di$PATH.node foo.jsjuga menjalankan skrip (dengan asumsi penerjemah disebutnode)
Catatan: Jawaban oleh xavierm02 dan saya sendiri adalah dua variasi skrip polyglot. Saya masih tertarik dengan solusi shebang murni, jika ada.
alphacentauridan semacamnya. Jika ada executable yang dipanggil nodejs, Anda bisa 99% yakin itu Node.js. Mengapa tidak mendukung keduanya nodejsdan node?
nodeuntuk skrip Anda, atau memiliki semacam skrip make yang memodifikasi shebang.