SQL スクリプトの行末にある「M」文字
Unix 環境で SQL スクリプトを実行すると、ユーザーが予期しない 'M' に遭遇する可能性があります' 文字を各行の末尾に追加します。この問題は、オペレーティング システム間の行終了文字の違いが原因で発生します。
Unix ベースのシステムでは、単一の改行文字 (LF または n) を使用して行を区切りますが、DOS/Windows システムではキャリッジ リターン (CR) が使用されます。または r) の後に改行 (LF または n) が続きます。この結果、DOS/Windows で作成されたスクリプトが Unix 環境で実行されると、行末に「M」文字 (CR) が追加されます。
解決策: 行末を変換
この問題を解決するには、SQL スクリプトの行末を Unix 形式に一致するように変換します。これは、dos2unix コマンドを使用して実現できます。
dos2unix <script.sql>
このコマンドは、CR LF 行末を LF 行末に置き換え、Unix 環境との互換性を確保します。
行末の規則を理解する
注意することが重要ですテキスト ファイルを操作するときのさまざまな行末規則。次の表は、一般的なオプションをまとめたものです:
Operating System | Line-ending Character |
---|---|
Unix, Linux | LF (n) |
DOS, Windows | CR LF (rn) |
MacOS (prior to Catalina) | CR (r) |
これらの規則を理解し、dos2unix などのツールを利用することで、行末の違いに関連する問題を効果的に解決できます。
以上がUnix SQL スクリプトの行末に「M」が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。