long string using find and "-exec ls -ls" to find part-of filename

Gregory Orange gregory.orange at calorieking.com
Mon Jun 30 05:48:15 UTC 2014


On 30/06/14 13:24, Gary Kline wrote:
> On Mon, Jun 30, 2014 at 01:04:50PM +0800, Gregory Orange wrote:
>> How about this?
>> find . -name foo.tar -o -name foo.tgz -o -name foo.tar.gz|xargs ls -lsi
> 	yup.  then WHY O WHY O WHY doesnt this work::
> 	find . -name "foo.t*" |xargs ls -lsi
> 	work?  is it only my memory [[delusional] that made me think that
> 	"foo.t*" expanded into your cmd string??  I thought the "*"
> 	expanded into what you have to save the hacker typing/keystrokes.

Curiously your command line works for me on both an Ubuntu (sh, bash) 
machine and a FreeBSD (sh, bash, csh, tcsh) machine. I would have 
expected the shell to expand * to and cause find to return an error, but 
it appears not. Perhaps it depends on the shell? It works for me on the 
shells listed above.


More information about the freebsd-questions mailing list