yes, the empty input can be dangerous, use -E to deal with that
find tmp -name notexist | xargs ls12c-connect.txt blog git-ignore-template
find tmp -name notexist | xargs -E ls -l
find tmp -name j | xargs -E ls -ltmp/run_stats_load/j
Thanks for the tip, I didn’t know about -print0. Is this option generallyJared Still
available on older Unix (hpux, aix, solaris)? I have been using double
quotes in most of my code for a couple years around file variables in
anticipation of being able to run on Windows environments. Have not dare
tested that yet however.
One other thing to note here. Be really careful with xargs. I believe it
executes on null input too. I don’t recall the exact issue but I have been
burned at least twice and good enough to recall you need to be very careful
with it if you are deleting or modifying things. Also stay away from “find
.” and make sure you try to use a full path there. This is all obvious
maybe and only used here for the sake of examples but throwing it out there
for the newbies if any are reading.
*From:* oracle-l-bounce@xxxxxxxxxxxxx <oracle-l-bounce@xxxxxxxxxxxxx> *On
Behalf Of *Jared Still
*Sent:* Friday, October 26, 2018 1:49 AM
*To:* Hameed, Amir <Amir.Hameed@xxxxxxxxx>
*Subject:* Re: Weird behavior with find command when tarring files
In addition to the other fine comments, you should get in the habit of
dealing with filenames that have spaces.
It seems impossible to anymore to avoid this, as you don't always have
control over it.
Here's how: use the '-print0' option for find, and the '-0' option for
find . type f -mmin +239 -print0 | xargs -0 tar -cvf /tmp/test.tar
Certifiable Oracle DBA and Part Time Perl Evangelist
Principal Consultant at Pythian
Pythian Blog http://www.pythian.com/blog/author/still/