Ao iniciar um script (como um comando), ele verifica o hash-bang ( #!
) para saber o que usar para iniciar o script. No seu script, aposto que começa com #!/usr/bin/python
ou similar. Quando você inicia como ./script.py
, lê a primeira linha e executa /usr/bin/python ./script.py
secretamente.
Se você o preceder usando bash ./script.py
, ele espera que o interpretador seja Bash, não Python.