Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: using pipes in a system() call

by bluto (Curate)
on Dec 07, 2005 at 20:41 UTC ( #515031=note: print w/replies, xml ) Need Help??

in reply to using pipes in a system() call

Be very careful about using find in this manner. If you know that file paths are always well formed, this is ok. I highly suggest you look into using the -print0 option of find and the corresponding '-0' (minus zero) of xargs, which most modern versions support. Update: Well most *should* support it but one of the boxes I used didn't appear to so perhaps thats a GNU-ism?

The main problem is when a user starts naming files with strange characters (esp spaces) in them these are not usually interpreted properly by xargs, even if you are only passing 1 argument via xargs' -n option. For example if a user has created a file named 'foo', a directory named 'foo ', a directory located under 'foo ' named 'etc', you will not be happy with the results of your chown (i.e. /etc will end up being chowned).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://515031]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (2)
As of 2018-04-26 00:24 GMT
Find Nodes?
    Voting Booth?