Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re^3: s// All Files In Directory

by aaron_baugher (Curate)
on Apr 02, 2012 at 20:00 UTC ( #963106=note: print w/ replies, xml ) Need Help??


in reply to Re^2: s// All Files In Directory
in thread s// All Files In Directory

Learn to be good with the command line. Being saddled with Windows is no excuse; if you can't stand the Windows command line (I can't), install Cygwin.

-p process line-by-line and print the results -i operate on files in place -e execute the following code Hence: perl -p -i -e 's/foo/bar/g' *

Aaron B.
My Woefully Neglected Blog, where I occasionally mention Perl.


Comment on Re^3: s// All Files In Directory
Download Code
Re^4: s// All Files In Directory
by perl.j (Pilgrim) on Apr 02, 2012 at 20:39 UTC
    So perl -p -i -e 's/5/6/g' will do what I want?
    --perl.j

      No. You have to add the file names you want to work with after the command. In your case you want to work with all files, so append an asterisk (*). Also, add a file extension to 'i' if you want to create a backup:

      perl -pi.bak -e 's/5/6/g;' *

      ...will create a copy of each file with a .bak extension before performing the search/replace. If you only want to affect certain files, name them explicitly, or use glob patterns. For instance, the following will only work on files with a .txt extension:

      perl -pi -e 's/5/6/g;' *.txt
        That depends entirely upon the shell. Bash will turn *.txt into a list of files. cmd.exe will not.

        This doesn't seem to be working...

        Can't open *: Invalid argument.

        --perl.j

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (13)
As of 2015-07-06 21:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (83 votes), past polls