How to replace ^M with a new line in perl

后端 未结 5 1584
时光说笑
时光说笑 2021-01-13 19:21

My test file has \"n\" number of lines and between each line there is a ^M, which in turn makes it one big string. The code I am working with opens said file and should par

5条回答
  •  北海茫月
    2021-01-13 20:25

    If mac2unix isn't working for you, you can write your own mac2unix as a Perl one-liner:

    perl -pi -e 'tr/\r/\n/' file.txt
    

    That will likely fail if the size of the file is larger than virtual memory though, as it reads the whole file into memory.

    For completeness, let's also have a dos2unix:

    perl -pi -e 'tr/\r//d' file.txt
    

    and a unix2dos:

    perl -pi -e 's/\n/\r\n/g' file.txt
    

提交回复
热议问题