Шебанг не мав бути таким гнучким . Можливо, є деякі випадки, коли функціонування другого параметра працює , я думаю, що FreeBSD є одним із них.
Очікується, що в ньому з'явиться більшість утиліт, що постачаються з ОС /usr/bin/.
У попередні дні UNIX зазвичай було /usr/встановлено NFS або деякі менш дорогі носії для економії місцевого дискового простору та витрат на робочу станцію. /bin/повинен був мати все необхідне для завантаження в режимі одного користувача . Оскільки /usr/він не був встановлений на надійному носії, /bin/увімкнув достатню кількість утиліт, щоб зробити його досить зручним для загального адміністрування та усунення несправностей.
Це було успадковано в Linux спочатку, але оскільки дисковий простір вже не є проблемою і в більшості випадків /usr/знаходиться в кореневій файловій системі, теперішня тенденція полягає в переміщенні всього /usr/bin(принаймні, у світі Linux). Тож очікується, що там знайдеться більшість комунальних послуг, встановлених дистрибутивом. Навіть самі основні утиліти, як cp, rm, і lsт.д. (ну, ще немає).
Щодо вибору shebang Традиційно це адміністратори чи користувачі мають редагувати відповідно до свого оточення. Бо всі розробники знають, що в інших системах інтерпретатор може бути в будь-якій точці файлової системи (наприклад /usr/local/bin, /opt/gawk-4.0.1/bin). Правильно упаковані сценарії (rpm, deb тощо) поставляються або залежно від пакета distro (тобто, у інтерпретатора є відоме місце розташування), або зі скриптом config, який встановлює належний хешбанг під час встановлення.
-f? Не/bin/gawkвистачає? Також це може бути актуальним.