Yanıtlar:
Bazı insanlar sistemdekinden farklı bir python (perl vb.) Kullanabilir. /usr/bin/env pythongeçerli olarak yapılandırılmış sürümü çalıştırır, betiği daha taşınabilir hale getirir.
Öte yandan, bazı sistemlerin olmadığı bildirildi /usr/bin/env. Ayrıca, #!/usr/bin/env foo xyerine geçemezsiniz #!foo x, çünkü foo xtek bir argüman olarak yorumlanır. Dolayısıyla yaklaşımın değeri tartışmalıdır.
info coreutils 'env invocation'Ben markaları çağıran bu formu görebilirsiniz emin yerine yerleşik kabuğun dış ikili, fakat hiçbir belirti nasıl env pythonherhangi farklı olurdu python?
PATHmuhtemelen içerir /usr/local/binilki. Birisi buraya manuel olarak python yüklediyse, envonu çağırır, oysa #!/usr/bin/pythonatlar.
virtualenvoldukça popüler bir araçtır ve çalışma dizinine çalıştırılabilir bir python yükler. envDüzgün çalışması için hile gerekir .
env pythonile aynı python. Ancak sorun şuna benzer bir yazı yazamamanızdır #!python: tam bir yol belirtmeniz gerekir.