Mail Archives: cygwin/2003/10/29/09:26:25
> From: Nicolas BUONOMO
> Sent: Wednesday, October 29, 2003 9:52 AM
> Hello,
>
> Hannu E K Nevalainen a écrit :
>
> >>From: Jared Ingersoll
> >>Sent: Monday, October 27, 2003 8:55 PM
> >
> > ....
> >
> > There is a 32KB length limit on the command line. This is
> imposed on us by
> > the underlying "OS" - i.e. not likely to change.
> >
> >
> > To check how long your command line would be, try something like this:
> >
> > $ find -type f -name 'send.log.*' |
> > (
> > read f;
> > cc=-1;
> > echo "";
> > while [ ! -z "$f" ];do
> > cc=$(( 1 + $cc + $( echo "$f" | wc -c) ));
> > echo -e "\e[F$cc\e[K";read f;
> > done;
> > echo -e "\e[F$cc chars"
> > )
> >
> > Remember to add the length of e.g. "ls -l " (note space).
> >
> > If this gives a number larger than...
> >
> > $ echo $(( ( 1 << 15 ) -1 ))
> > 32767
> >
> > ... then you're "outta luck".
> >
>
> I try your command on a Microsoft XP pro and I win
>
> nicolas AT cl12369n ~ s=1
> $ find -type f -name '*' | ( read f; cc=-1; echo ""; while
> [ ! -z "$f" ]; do cc=$(( 1 + $cc + $( echo "$f" | wc -c) ));
> echo -e "\e[F$cc\e[K";read f; done; echo -e "\e[F$cc chars"; )
> 1789980 chars
>
> Where is the problem?
>
=-) there is no problem with _my_ command. It was to show _when_ there is a
problem - and what the problem consists of.
Try "ls -l *" in the same directory as you did your test in. That will give
you an error message, due to the limit mentioned earlier in this thread.
/Hannu E K Nevalainen, B.Sc. EE - 59?16.37'N, 17?12.60'E
-- printf("LocalTime: UTC+%02d\n",(DST)? 1:2); --
--END OF MESSAGE--
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -