誤ったインタプリタです
自動実行用のスクリプトをWindowsで書きサーバーにアップし実行した際に出たエラー
> /user/bin/php^M:誤ったインタプリタです
こんな表示が出た。
何かなと調査すると、どうやらWindowsファイルの改行コードをLinuxが文字列として判断してしまう。
$ cat -e hogehoge.php
上記のコマンドを実行すると改行に全て^M$が入ってしまっている。
これを取り除くためには
$ sed -i 's/\r//' 対象ファイル
上記を実行し、再度catで確認すると改行コードが抜けた。確認後コードを実行すると問題なく動作した。
最初から文字コードを意識しとけば良いけどウッカリって時に。