2013年8月21日水曜日

改行コードの変換

シェルスクリプトを実行する際に次のようなエラーが出ました。

bad interpreter: そのようなファイルやディレクトリはありません

シェルの内容やファイルの配置に問題は無く、どうやら改行コードに原因があるようでした。
Windowsでファイルを作成し、UNIX上で動かそうとしたのですが、Windowsでは改行コードが『CR+LF
UNIXでは『LF』と異なるためエラーとなったようです。
そこでvimを使って改行コードをUNIXの『LF』に変換してみることにしました。

変換方法 ※vimを使用する場合


1 ファイルをvimで開く
まずファイルをvimで開きます。

2 改行コードを確認する
vimのコマンドモードで『:set fileformat?』と入力します。
すると『fileformar=dos』と表示されました。

3 改行コードを変換する
引き続きvimのコマンドモードで『:set fileformat=unix』と入力します。

4 改行コードを再確認する
変換されているか確認するため、再度コマンドモードで『:set fileformat?』と入力します。
すると『fileformat=unix』と表示されました。

5 保存して終了
変換されていることを確認すると、最後に『:wqと入力し終了します。


以上で改行コードを変換することができました。
これからは改行コードの差も意識していきたいと思います。
  • この記事をシェアする

  • このエントリーをはてなブックマークに追加
  • このブログの更新をチェックする

  • follow us in feedly