Když používám shebang #!/usr/bin/env python pro spuštění skriptu, jak systém pozná, který python použít? pokud hledám python cestu bin v proměnných prostředí nenacházím nic.
env | grep -i python
Přijatá odpověď:
Shebang očekává úplnou cestu k interpretu, který se má použít, takže následující syntaxe by byla nesprávná:
#!python
Nastavení úplné cesty může fungovat takto:
#!/usr/local/bin/python
ale nebylo by přenosné, protože python by mohl být nainstalován v /bin , /opt/python/bin nebo kdekoli jinde.
Pomocí env
#!/usr/bin/env python
je metoda umožňující přenosným způsobem specifikovat OS úplnou cestu ekvivalentní té, kde python je nejprve umístěn v PATH .