В UNIX и Linux указывается, какой двоичный файл использовать в качестве интерпретатора (см. Также Wiki-страница ).
Например, скрипт оболочки интерпретируется как /bin/sh
.
#!/bin/sh
Теперь с python это немного сложно, потому что вы не можете предположить, где установлен бинарный файл или какой вы хотите использовать. Таким образом, /usr/bin/env
трюк. Он используется в зависимости от того, какой двоичный файл Python первым в $PATH
. Вы можете проверить, что выполняет which python
С помощью строки интерпретатора вы можете запустить скрипт, выполнив chmod для его запуска. И просто запустить его. Таким образом, со сценарием, начинающимся с
#!/usr/bin/env python
эти два метода эквивалентны:
$ python script.py
и (при условии, что ранее вы сделали chmod +x script.py
)
$ ./script.py
Это полезно для создания общесистемных сценариев.
cp yourCmd.py /usr/local/bin/yourCmd
chmod a+rx /usr/local/bin/yourCmd
А потом вы звоните откуда угодно только с
yourCmd