Можно написать один текст, который является допустимой программой на нескольких языках (на самом деле, есть один на одной из страниц ошибок SO), но эти вещи почти никогда не бывают полезными - это просто курьезы, просто чтобы показать от ума.
То, что обеспечивает Unix, что весьма полезно, - это способ гарантировать язык скрипта, независимо от того, какая оболочка (или другая программа) используется для вызова скрипта. Это так называемый синтаксис «резкого взрыва». Итак, вы выбираете свою любимую оболочку (я настоятельно предпочитаю оболочку Bourne оболочке C, а file /usr/bin/* | grep shell
соглашается со мной), а затем вы пишете
#!/bin/sh
export PATH=/usr/local/bin:$PATH
print "I am running as Bourne shell no matter what your login shell is!"
Иногда полезно написать что-то более сложное; У меня есть несколько сценариев, которые начинаются с
#/usr/bin/env lua5.1
вы также можете сделать это с помощью perl, python, ruby, ...