回答:
WindowsとLinuxでは、行末記号が異なります。
dos2unix
それを修正するユーティリティをインストールできます。
sudo apt-get install dos2unix
この方法で実行します:
dos2unix -n winfile.txt linuxfile.txt
unix2dos
ユーティリティもあります。
WindowsからLinuxへの変換は、特別なソフトウェアをインストールせずに行うこともできます。
tr -d '\r' < winfile.txt > linuxfile.txt
注: 入力ファイルと出力ファイルは異なる必要があります。
sedのバージョンは、「場所に」ファイルを編集します:
sed -i 's/\r//g' file.txt
または、別のファイルに書き込みます。
sed 's/\r//g' winfile.txt > linuxfile.txt
dos2unix winfile.txt linuxfile.txt
両方のファイルを変換しようとします。このコマンドを使用しますdos2unix -n winfile.txt linuxfile.txt
Windowsでは、Notepad ++の行末(EOL)形式をUNIXに変更する必要があります。
そうすれば、Ubuntuでも動作します。
Windowsは、改行にCR + LFを使用します。Linux / Unixでは、LFが必要です。したがって、スクリプトでCR + LFをLFに置き換える必要があります。
インストール dos2unix
sudo apt-get install dos2unix
スクリプトを修正するには
dos2unix <your_script_file>
または経由
dos2unix -n <your_script_file> <out_file>
別の出力ファイルが必要な場合
詳細はこちら
から man dos2unix
NAME
dos2unix - DOS/Mac to Unix and vice versa text file format converter
SYNOPSIS
dos2unix [options] [FILE ...] [-n INFILE OUTFILE ...]
unix2dos [options] [FILE ...] [-n INFILE OUTFILE ...]
Windowsではcygwinを使用しています。
viでファイルを開きます。次に入力してください
:set ff=unix<enter> followed by
:wq<enter>
Unixの行末文字でファイルを保存します。