Sponsored Content
Full Discussion: maximum number of arguments
Top Forums UNIX for Dummies Questions & Answers maximum number of arguments Post 302247416 by s.mascheck on Wednesday 15th of October 2008 05:03:27 PM
Old 10-15-2008
Quote:
Originally Posted by matrixmadhan
What is the maximum number of arguments that could be passed to zsh ?
To find out that I tried a simple script.
And the maximum number of arguments that could be passed turned out to be 23394

Code:
 ...
subIndex=23000
while [ $i -le $subIndex ]
do
  arg=$arg" "$i
  i=$(($i + 1))
done ...

Am not sure whether this approach is current or not.
(Earlier postings here suggested, that you missed to count your environment. But that is not a plausible explanation for the huge difference .)

Your approach has this flaw: It hits the maximum length of args, not the maximum number, because in average your arguments are too long!

The maximum length on Linux-pre-2.6.23 is 131072.
Your environment is about 2k. Now estimate the length of all your args:
About 9 single digit args (1..9) (each with a trailing ASCII-NUL, add one for the length),
about 90 double digit args (10..99), round numbers are easier,
and so on:

Code:
$ bc
9*2 + 90*3 + 900*4 + 9000*5 + 13394*6    + 2000
131252

This is almost identical to the expected limit.

You will only hit the maximum number of arguments (on Linux-pre-2.6.23) if the average length is at most 4.

Last edited by s.mascheck; 10-16-2008 at 04:59 PM.. Reason: wrong code tags around calculation fixed
 

9 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Maximum number of threads per user

Anybody knows how to setup Maximum number of threads per user or some other value on Sun Solaris 8. (1 Reply)
Discussion started by: s_aamir
1 Replies

2. UNIX for Dummies Questions & Answers

Maximum number of users allowed

How do i determen (what command) the max. number of users allowed Thanks in advance (10 Replies)
Discussion started by: siza
10 Replies

3. Programming

maximum number of dots in a domain name

maximum number of dots in a domain name - not a sub-domain name. for example: mydomain.com ------ one dot mydomain.com.au ------ two dots do you know maximum number of dots in a domain name and could you provide a sample? thx. (1 Reply)
Discussion started by: hello20009876
1 Replies

4. Solaris

Maximum Number of threads suuported????

Hi, Anybody knows the maximum number of threads suuported by a process in solaris os. Please reply Thanks in advance :( (1 Reply)
Discussion started by: Agnello
1 Replies

5. UNIX for Dummies Questions & Answers

ls - maximum number of files

what is the maximum number ls can list down (6 Replies)
Discussion started by: karnan
6 Replies

6. Shell Programming and Scripting

Maximum number of characters in a line.

Hi, Could any one please let me know what is the maximum number of characters that will fit into a single line of a flat file on a unix. Thanks. (1 Reply)
Discussion started by: Shivdatta
1 Replies

7. Shell Programming and Scripting

Maximum command line arguments

Hi, Can anyone please help me to know what is the maximum number of command line arguments that we can pass in unix shell script? Thanks in advance, Punitha.S (2 Replies)
Discussion started by: puni
2 Replies

8. Shell Programming and Scripting

Maximum number from input by user

I am trying to calculate the maximum number from four numbers input by the user. I have the following code, but it does not work. It says there's an error with the last line "done". Any help would be appreciated. max=0 echo "Please enter four numbers: " for i in 1 2 3 4 do read number... (17 Replies)
Discussion started by: itech4814
17 Replies

9. UNIX for Dummies Questions & Answers

Maximum number of sed squeezing

Hi all, What is the maximum number of sed squeezing in one shell?? I've surprised with this message when I squeezed 50 sed in the same shell: 253: Identifier too long - maximum length is 18.This is what I've did in my sed query | sed -e "s/ 0 /Default /" | sed -e "s/ 1 ... (2 Replies)
Discussion started by: leo_ultra_leo
2 Replies
XARGS(1)						      General Commands Manual							  XARGS(1)

NAME
xargs - construct argument list(s) and execute utility SYNOPSIS
xargs [ -t ][[ -x ] -n number ][ -s size ][ utility [ arguments... ]] DESCRIPTION
The xargs utility reads space, tab, newline and end-of-file delimited arguments from the standard input and executes the specified utility with them as arguments. The utility and any arguments specified on the command line are given to the utility upon each invocation, followed by some number of the arguments read from standard input. The utility is repeatedly executed until standard input is exhausted. Spaces, tabs and newlines may be embedded in arguments using single (`` ' '') or double (``"'') quotes or backslashes (``''). Single quotes escape all non-single quote characters, excluding newlines, up to the matching single quote. Double quotes escape all non-double quote characters, excluding newlines, up to the matching double quote. Any single character, including newlines, may be escaped by a back- slash. The options are as follows: -n number Set the maximum number of arguments taken from standard input for each invocation of the utility. An invocation of utility will use less than number standard input arguments if the number of bytes accumulated (see the s option) exceeds the specified size or there are fewer than number arguments remaining for the last invocation of utility. The current default value for number is 5000. -s size Set the maximum number of bytes for the command line length provided to utility. The sum of the length of the utility name and the arguments passed to utility (including /dev/null terminators) will be less than or equal to this number. The current default value for size is ARG_MAX - 2048. -t Echo the command to be executed to standard error immediately before it is executed. -x Force xargs to terminate immediately if a command line containing number arguments will not fit in the specified (or default) command line length. If no utility is specified, echo(1) is used. Undefined behavior may occur if utility reads from the standard input. The xargs utility exits immediately (without processing any further input) if a command line cannot be assembled, utility cannot be invoked, an invocation of the utility is terminated by a signal or an invocation of the utility exits with a value of 255. The xargs utility exits with a value of 0 if no error occurs. If utility cannot be invoked, xargs exits with a value of 127. If any other error occurs, xargs exits with a value of 1. SEE ALSO
echo(1), find(1) STANDARDS
The xargs utility is expected to be IEEE Std 1003.2("POSIX") compliant. June 6, 1993 XARGS(1)
All times are GMT -4. The time now is 12:40 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy