0

centosサーバーにスクリプトがあり、VIMを使用してサーバーにスクリプトを書きました。スクリプトは、構成ファイルを編集することです。編集後に構成ファイルを確認すると、編集されていないすべての行の末尾に ^M があります。編集された行は問題ありません。

        cat hibernate.properties | 
    sed -i.bk \
    -e 's%\(^hibernate\.connection\.url\=ristor:jdbc:postgresql:\/\/127\.0\.0\.1/\).*%\'1$dbname'%' \
    -e 's/\(^hibernate\.connection\.username\=\).*/\'1$dbuser'/' \
    -e 's/\(^hibernate\.connection\.password\=\).*/\'1$pws'/' hibernate.properties

これは、構成ファイルを編集するために使用されているコードです。編集されていないすべての行の最後に ^M を入れるのはなぜですか?

4

2 に答える 2

0

これ. \r_ _ _ スクリプトは、実際に触れた各行からそれを削除し、ファイルを考慮しなくなったため、まだ残っている改行が表示されます。それらを削除すると(in する必要があります)、再び発生する可能性は低くなります。dosvimvimdos%s/<Ctrl-V><Ctrl-M>$//vim

于 2012-11-20T11:19:30.873 に答える
0

表示されているの^Mは、おそらく一部の行での Windows スタイルの行末です。dos2unixスクリプトを実行する前に、ファイルを実行してみてください。

例えば:

dos2unix hibernate.properties
于 2012-11-20T11:18:43.947 に答える