次の「shebang」の最初の行を追加してPythonスクリプトを実行可能にしようとしています。
#!/usr/bin/env python
ただし、ファイルを実行すると、次の結果が表示されます。
$ myscript.py
: No such file or directory
今、この行を自分で試してみてくださいenv
。
]$ /usr/bin/env python
Python 2.6 (r26:66714, May 5 2010, 14:02:39)
etc. etc.
同じ行がファイル内では失敗しますが、外部では成功するのはなぜですか?
答え1
shebang行のどこかに誤った文字がある可能性があります。挿入した人なのでキャリッジリターンになる可能性が高いです。つまり、あなたの行は改行とキャリッジリターン(またはその逆)で終わります(ODSスタイルの改行)。
dos2unix
スクリプトファイルのすべての改行を0x10
(UNIXスタイル)にのみ変換してみてください。