Windows環境で用意したshスクリプトファイルをFTPでアップロードして使おうとしたらCentOSに
怒られた。
その時の対応メモ
原因
改行コードが\r\nのためエラーメッセージ
対応
Linuxの\nに直す。対処法は以下コマンド。
1 2 |
sed -i 's/r//' hoge.sh |
catコマンドで確認できる
1 2 |
cat -e hoge.sh |
^M$_ が $ に書き換わっていればOK
- 変換前
!/bin/bash^M$
- 変換後
!/bin/bash$
一括で変換コマンド
カレントディレクトリ以下の拡張子が.shのファイルは全て改行コード書き換え
”’
find ./ -name ‘*.sh’ -print -exec sed -i ‘s/\r//’ {} “;”
”’