スクリプトが \r で動かない(CRLF混入)
症状(よく出るエラー)
/bin/bash^M: bad interpreter: No such file or directory
原因
Windowsで編集したスクリプトの改行コードが CRLF になり、行末の \r(^M)がshebang行を壊している。
直し方
dos2unix script.sh で変換、または sed -i 's/\r$//' script.sh。エディタの改行コードを LF に設定しておくと再発しない。
/bin/bash^M: bad interpreter: No such file or directory
Windowsで編集したスクリプトの改行コードが CRLF になり、行末の \r(^M)がshebang行を壊している。
dos2unix script.sh で変換、または sed -i 's/\r$//' script.sh。エディタの改行コードを LF に設定しておくと再発しない。