Não é apenas /usr/bin/env python
, mas #!/usr/bin/env python
, e essa linha é chamada de shebang .
Estou citando a Wikipédia:
Em sistemas operacionais semelhantes ao Unix, quando um script com um shebang é executado como um programa, o carregador de programas analisa o restante do script linha inicial como diretiva de intérprete; o intérprete especificado programa é executado em vez disso, passando para ele como um argumento o caminho que foi inicialmente usado ao tentar executar o script. [8] Por exemplo, se um script é nomeado com o caminho "caminho / para / script", e começa com o caminho linha seguinte:
#!/bin/sh
o programa loader é instruído a executar o programa "/ bin / sh" em vez disso (geralmente este é o shell Bourne ou um shell compatível), passando "caminho / para / script" como o primeiro argumento.
A linha shebang é geralmente ignorada pelo intérprete porque o "#" caractere é um marcador de comentário em muitas linguagens de script; alguns intérpretes de idioma que não usam o hash mark para começar comentários (como o Scheme) ainda pode ignorar a linha de shebang em reconhecimento de seu propósito.
No meu caso (13.10 Desktop), /usr/bin/env python
será o padrão para python2.7, mas poderá ser python3.4 dependendo dos padrões do seu sistema (por exemplo, 14.04 Server).
$ /usr/bin/env python
Python 2.7.5+ (default, Feb 27 2014, 19:37:08)
[GCC 4.8.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>