Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Dos2Unix file formater

by pschoonveld (Pilgrim)
on Apr 13, 2000 at 23:10 UTC ( #7516=snippet: print w/ replies, xml ) Need Help??

Description: I hate DOS \r\n (carriage return, newline) file formats. Each line is all broken and crappy. So, I hacked up this little guy for my unix boxen around the world.
#!/usr/bin/perl
# convert a dos \r\n format to unix \bn
open (FILE, $ARGV[0]);
while (<FILE>) {
        # remove the stupid \r, replace with \n
        # some broken editors just put \r
        s/\r/\n/g;
        # Remove the duplicate \n
        s/\n\n/\n/g;
         print;
}
Couple comments:
This thing just dumps the data back to the screen. You need to capture it yourself. It is a preference for me because I many times don't want to overwrite the file I am editting. If you don't like this, change it.
Secondly, this thing does some crazy stuff. I hate blank lines. This thing makes sure there are none. Have code you want formatted nicely? It will break it in a manner that only vroom could understand. So, its quick N dirty to the max.

Update Chromatic offered an easier way to do this. In fact I am sure that is the better way to do it, and in fact at some point it was written similar to that. The hell if I rememeber why I changed it. But it basically came down to its origins and the fact I didn't want ANY blank lines.

Comment on Dos2Unix file formater
Download Code
RE: Dos2Unix file formater
by chromatic (Archbishop) on Apr 14, 2000 at 20:55 UTC
    Why not reduce that to: tr/\r\n/\n/s; Ahh, tr///!

Back to Snippets Section

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: snippet [id://7516]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (14)
As of 2014-10-30 14:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (208 votes), past polls