Dalam shebang, apakah ada ruang atau lebih yang diizinkan antara #!
dan penerjemah?
Sebagai contoh #! /bin/bash
,. Tampaknya berhasil, tetapi beberapa mengatakan bahwa itu tidak benar.
Dalam shebang, apakah ada ruang atau lebih yang diizinkan antara #!
dan penerjemah?
Sebagai contoh #! /bin/bash
,. Tampaknya berhasil, tetapi beberapa mengatakan bahwa itu tidak benar.
Jawaban:
Ya, ini diizinkan.
Artikel Wikipedia tentang shebang termasuk email 1980 dari Dennis Ritchie, ketika ia memperkenalkan dukungan kernel untuk shebang (sebagai bagian dari paket yang lebih luas yang disebut arahan juru bahasa ) ke dalam Versi 8 Unix (penekanan tambang):
Sistem telah diubah sehingga jika file yang dijalankan dimulai dengan karakter ajaib
#!
, sisa baris dipahami sebagai nama juru bahasa untuk file yang dieksekusi. [...]Untuk memanfaatkan peluang luar biasa ini, tulis
#! /bin/sh
di margin kiri baris pertama skrip shell Anda. Kosong setelah
!
itu OK.
Jadi ruang setelah shebang sudah ada cukup lama, dan memang, contoh Dennis Ritchie menggunakannya.
Perhatikan bahwa versi awal Unix memiliki batas 16 karakter pada baris juru bahasa ini, jadi Anda tidak dapat memiliki jumlah spasi kosong di sana. Pembatasan ini tidak lagi berlaku di kernel modern.
Ya, kosong diizinkan setelah #!
. Bahkan ada (salah) berpikir bahwa beberapa sistem mungkin memerlukannya, tetapi selalu saja opsional.
Untuk bacaan lebih lanjut coba di sini