Estou tentando tornar um script python executável, adicionando a seguinte primeira linha "shebang":
#!/usr/bin/env python
mas quando executo o arquivo, recebo:
$ myscript.py
: No such file or directory
Agora, se eu tentar a env
linha diretamente, ela funciona:
]$ /usr/bin/env python
Python 2.6 (r26:66714, May 5 2010, 14:02:39)
etc. etc.
Por que a mesma linha falha dentro do arquivo, mas funciona fora dele?
Responder1
Você provavelmente tem um caractere inválido em algum lugar da sua linha shebang. Como foi você quem o inseriu, provavelmente é um retorno de carro, ou seja, sua linha termina com uma nova linha e um retorno de carro (ou vice-versa) - no estilo ODS de quebra de linha.
Tente usar dos2unix
seu arquivo de script para converter todas as quebras de linha em apenas 0x10
(estilo UNIX).