Bagaimana saya bisa mengetahui apakah suatu skrip ditulis dalam bash
atau sh
?
Baris pertama skrip tidak membantu di sini, karena di Linux, skrip bash memiliki baris ini:
#!bin/sh
Sebenarnya, ada banyak distribusi di mana /bin/sh
bash (mungkin /bin/sh
merupakan tautan ke /bin/bash
dalam distribusi itu), dan bukan Bourne Shell. Jadi jika saya mencoba menjalankan skrip yang ditulis dalam bash in, misalnya, FreeBSD, hasilnya tidak didefinisikan, karena /bin/sh
di FreeBSD adalah Bourne Shell, dan bukan bash.
Apakah ada cara mudah untuk mengidentifikasi apakah skrip bash atau sh?
Apakah ada beberapa hal khusus dalam sintaksis?