Re: Formatting a mail

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sunday, Oct 14th 2007 at 22:05 -0000, quoth Tony Nelson:

=>At 11:29 AM +1000 10/15/07, Cameron Simpson wrote:
=>>On 14Oct2007 17:09, John Summerfield <debian@xxxxxxxxxxxxxxxxxxxxxx> wrote:
=>>> Cameron Simpson wrote:
=>>>> On 14Oct2007 14:39, I wrote:
=>>
=>>> It doesn't matter how one creates the commandline, there is a limit on its
=>>> size. Here, I'm not concerned about side effects of bad characters such as
=>>> & and ;.
=>>
=>>Sure, but in the code we're discussing:
=>>
=>>  for m in subdir/*report*
=>>
=>>that limit is not hit. Why not? Because the limit only applies to exec()
=>>calls. It is an OS interface limit. For loops take place entirely in
=>>user space. There is no "command line" being constructed in the sense
=>>you're thinking.
=> ...
=>
=>Whaddayaknow.
=>
=>    $ ls /*/*/*/*/* | wc
=>    bash: /bin/ls: Argument list too long
=>          0       0       0
=>    $ for n in /*/*/*/*/* ; do echo $n ; done | wc
=>     211860  218203 7290275
=>    $
=>-- 

Ok. I now believe it but I don't understand why. The ls command gets 
globbed and grows to be too big.  But the for commandline has 
to also grow to the same size. Is it because the forloop is special?

Try this 

$ for n in /*/*/*/*/* ; do echo $n ; done | wc

Vs.

$ bash -c "for n in /*/*/*/*/* ; do echo \$n ; done | wc"

Now the stars get expanded by the outer bash and when the inner bash 
starts, he doesn't know that there ever were any stars. The funny part is 
that in the new case the output numbers are different. Note that we are 
exec'ing a new bash and that that bash only starts after the terminal 
session has expanded the stars. AFAICT, we seem to be exec'ing an 8M 
commandline which is bigger than the 130K in limits.h

So what's the deal? Am I missing something? 

-- 
Time flies like the wind. Fruit flies like a banana. Stranger things have  .0.
happened but none stranger than this. Does your driver's license say Organ ..0
Donor?Black holes are where God divided by zero. Listen to me! We are all- 000
individuals! What if this weren't a hypothetical question?
steveo at syslang.net

-- 
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [Fedora Magazine]     [Fedora News]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Maintainers]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [Fedora Fonts]     [ATA RAID]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [SSH]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Tux]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Asterisk PBX]     [Fedora Sparc]     [Fedora Universal Network Connector]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux