[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
xargs --max-chars: mention that you really mean bytes
From: |
積丹尼 Dan Jacobson |
Subject: |
xargs --max-chars: mention that you really mean bytes |
Date: |
Sat, 11 Jan 2020 21:20:05 +0800 |
info xargs says
'--max-chars=MAX-CHARS'
'-s MAX-CHARS'
Use at most MAX-CHARS characters per command line, including the
command, initial arguments and any terminating nulls at the ends of
the argument strings.
Mention that you mean bytes, not characters.
$ echo a 哇|xargs -s 8
xargs: argument line too long
a
$ echo a b|xargs -s 8
a
b
Also mention it in man xargs
-s max-chars, --max-chars=max-chars
Use at most max-chars characters per command line, including the
command and initial-arguments and
the terminating nulls at the ends of the argument strings. The
largest allowed value is system-de‐
pendent, and is calculated as the argument length limit for exec,
less the size of your environ‐
ment, less 2048 bytes of headroom. If this value is more than
128KiB, 128Kib is used as the de‐
fault value; otherwise, the default value is the maximum. 1KiB
is 1024 bytes. xargs automatically
adapts to tighter constraints.
(Even though it does mention bytes a little.)
(Odd that the man page is more detailed than the Info page.)
$ xargs --show-limits < /dev/null
Your environment variables take up 1362 bytes
POSIX upper limit on argument length (this system): 2093742
POSIX smallest allowable upper limit on argument length (all systems): 4096
Maximum length of command we could actually use: 2092380
Size of command buffer we are actually using: 131072
Maximum parallelism (--max-procs must be no greater): 2147483647
Only the first says bytes. The rest need to too.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- xargs --max-chars: mention that you really mean bytes,
積丹尼 Dan Jacobson <=