LINUX.IE, website of the Irish Linux Users' Group
Tux rules!

   
Home
New Users
Articles
Download
Projects
Community
Vendors

  Print Version
Email to...
 
Archives:


planetILUG

Recent News

News Archive


Join the
ILUG
on FaceBook


Join the
ILUG
on LinkedIn


Join the
ILUG SETI
Group



















 
 :: Mailing Lists

[ILUG] Recursively Remove Comments

[ILUG] Recursively Remove Comments

Kevin Lyda kevin at ie.suberic.net
Mon Aug 16 15:04:47 IST 2010


I think you'll need multi-line reg-ex parsing I suspect.  But if those
are the specific comments you want removed and they all look like
this, then you might get away with:

find . -type f -name '*.php' -execdir sed -i -e '/\*\/\*/,/\*\/\*/d' '{}' '+'

If you're on OS X with a broken sed, add a "" arg in between the -i
and -e.  If you want to append .orig as a backup of the original file,
append .orig to -i on sane unix systems or insert a .orig argument
between the -i and -e on OS X systems.

Doing a "while read file; do blah; done" idiom is generally a bad idea
as newlines and spaces wreck havoc on your script.  In this case there
are also less fork()s.

Kevin

On Sat, Aug 14, 2010 at 22:32, Conor Mac Aoidh <conormacaoidh at gmail.com> wrote:
> Hi,
>
> Can anyone recommend me a command to recursively remove comments from files?
> The comments are in the format of:
>
> */*
>  * blah
>  * blah
>  */*
>
> Specifically from PHP files. This is the command I was trying, but for some
> reason it is doing the exact opposite of what I wanted and removing all
> content except for the comments:
> *
> find . -type f -name "*.php" | while read file; do sed -e '/*/d' $file >
> $file; done*
>
> I would appreciate any help.
>
> Thanks
> ---
> Conor Mac Aoidh
>
> http://blog.macaoidh.name
> --
> Irish Linux Users' Group mailing list
> About this list : http://mail.linux.ie/mailman/listinfo/ilug
> Who we are : http://www.linux.ie/
> Where we are : http://www.linux.ie/map/
>



-- 
Kevin Lyda
Dublin, Ireland
US Citizen overseas? We can vote.
Register now: http://www.votefromabroad.org/


More information about the ILUG mailing list
Read this without the formatting.
                                                                                                    

 

Hosted by HEAnet


Maintained by the ILUG website team. The aim of Linux.ie is to support and help commercial and private users of Linux in Ireland. You can display ILUG news in your own webpages, read backend information to find out how. Networking services kindly provided by HEAnet, server kindly donated by Dell. Linux is a trademark of Linus Torvalds, used with permission. No penguins were harmed in the production or maintenance of this highly praised website. Looking for the Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!
RSS Version
Powered by Dell