Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: remove lines from file ending with / char

by swampyankee (Parson)
on Sep 03, 2012 at 13:23 UTC ( #991432=note: print w/replies, xml ) Need Help??


in reply to remove lines from file ending with / char

The first place to look is in perlfaq5. Anyhow, there are several ways to do it. The easiest is to

(((pseudocode))) open, for reading, the file you want to change (input file) open, for writing, a temp file. until EOF { read a record from the input file. if you want to keep it write it to the temp file } replace the input file with the temp file

If the file is small (ymmv), you can do something like this:

(((pseudocode))) open input file for reading slurp ENTIRE input file into array (@contents = <INFILE>) close the input file use grep to remove lines with trailing slashes from the array (@conten +ts = grep { !/\/$/ } @contents) open the input file for writing (this act will destroy the input file! +) write array into the file

A couple of suggestions: first, test from a copy of the file you plan on doing this to. Second, study perlre and grep for hints. Third, beware of trailing white space.


Information about American English usage here and here. Floating point issues? Please read this before posting. — emc

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://991432]
help
Chatterbox?
[hippo]: In that case, use Net::SMTPS and also encrypt your content before you send it eg. with Crypt::GPG
[1nickt]: hippo You suggest this as a transport agent for Email::Sender, or ...? Just for the record Email::Sender:: Transport::SMTP has SSL/TLS support built-in (and some shiny RJBS extras like "partial success" ...)
[Perl300]: ok

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (10)
As of 2017-10-17 16:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My fridge is mostly full of:

















    Results (234 votes). Check out past polls.

    Notices?