.TH XARGS 1 \" -*- nroff -*- .SH NAME xargs \- 从标准输入重建并执行命令行 .SH "总览 (SYNOPSIS)" .B xargs [\-0prtx] [\-e[eof-str]] [\-i[replace-str]] [\-l[max-lines]] [\-n max-args] [\-s max-chars] [\-P max-procs] [\-\-null] [\-\-eof[=eof-str]] [\-\-replace[=replace-str]] [\-\-max-lines[=max-lines]] [\-\-interactive] [\-\-max-chars=max-chars] [\-\-verbose] [\-\-exit] [\-\-max-procs=max-procs] [\-\-max-args=max-args] [\-\-no-run-if-empty] [\-\-version] [\-\-help] [command [initial-arguments]] .SH "描述 (DESCRIPTION)" 此 手册页 描述 GNU 版本 的 .BR xargs . .B xargs 从 标准 输入 读入 参数. 参数 用 空格(可以 用 双引号 单引号 或 反斜杠 转意) 或者 回车 隔开. 然后 一次 或者 多次 执行 命令 .I command (默认 是 /bin/echo), 其 参数 是 .I initial-arguments 后面 再 加上 从 标准 输入 读入 的 参数. 标准 输入中 的 空格 被 忽略. .P .B xargs 退出 可以有 如下 状态: .nf 0 如果 成功 123 如果 任何 一个 被 调用 的 命令 command 退出 状态 为 1-125 124 如果 命令 command 退出 状态 为 255 125 如果 命令 command 被 信号 终止 126 如果 不能 执行 命令 command 127 如果 命令 command 没有 找到 1 如果 发生 其它 错误 .fi .SS "选项 (OPTIONS)" .TP .I "\-\-null, \-0" 输入 的 文件名 以 null 字符 结尾, 而不是 空格, 引号 和 反斜杠 并不 特殊 处理 (所有 字符 都以 字面 意思 解释). 禁止 文件尾 字符串, 当 另一个 参数 处理. 当 参数 含有 空格, 引号, 反斜杠 时 很方便. GNU find 的 \-print0 选项 产生 适合 这种 模式 的 输出. .TP .I "\-\-eof[=eof-str], \-e[eof-str]" 把 文件尾 字符串 设置 成\fIeof-str\fR. 如果 文件尾 字符串 出现 在 输入中 的 某行, 余下的 行 将被 忽略. 如果 没有 \fIeof-str\fR , 就 没有 文件尾 字符串. 如果 没有 这个 选项, 文件尾 字符串 默认 是 "_". .TP .I "\-\-help" 显示 .B xargs 的 选项, 然后 退出. .TP .I "\-\-replace[=replace-str], \-i[replace-str]" 把 initial-arguments 里的 所有 \fIreplace-str\fR 替换为 从 标准 输入 里 读入 的 名称. 同时, 没有 用 引号 括起来 的 空格 不会 结束 参数. 如果 没有 \fIreplace-str\fR , 它 默认为 "{}" (同 `find \-exec' 一样). 此 选项 隐含有 \fI\-x\fP 和 \fI\-l 1\fP 选项. .TP .I "\-\-max-lines[=max-lines], -l[max-lines]" 每个 命令行 最多 可以 有 \fImax-lines\fR 行 非空格 输入; \fImax-lines\fR 默认 是 1. 后面 跟着 的 空格 会使 后面 一行 逻辑 上 是 一个 输入行 的 继续. 此 选项 隐含有 \fI\-x\fR 选项. .TP .I "\-\-max-args=max-args, \-n max-args" 每个 命令行 最多 可以 有 \fImax-args\fR 个 参数. 如果 大小 超出了 (见 \-s 选项) 那么 参数 个数 将 会用 比 \fImax-args\fR 小; 除非 用了 \-x 选项, 那么 \fBxargs\fR 将 退出. .TP .I "\-\-interactive, \-p" 提示 用户 是否 运行 每个 命令行, 然后 从 终端 读入 一行. 只有 当 此行 以 'y' 或 'Y' 开头 才会 运行 此 命令行. 此 选项 隐含有 \fI\-t\fR 选项. .TP .I "\-\-no-run-if-empty, \-r" 如果 标准 输入 不 包含 任何 非空格, 将 不运行 命令. 一般 情况下, 就算 没有 输入, 命令 也会 运行 一次. .TP .I "\-\-max-chars=max-chars, \-s max-chars" 每个 命令行 最多 可以 有 \fImax-chars\fR 个 字符, 包括 命令 和 初始 参数, 还 包括 参数 后面 结尾 的 null. 默认 是 尽可能的 大, 有 20k 个 字符. .TP .I "\-\-verbose, \-t" 在 执行 之前 在 标准 错误 输出 显示 命令行. .TP .I "\-\-version" 显示 .B xargs 的 版本号, 然后 退出. .TP .I "\-\-exit, \-x" 如果 大小 超出 (见 \fI\-s\fR 选项) 就 退出. .TP .I "\-\-max-procs=max-procs, \-P max-procs" 同时 最多 运行 \fImax-procs\fR 个 进程; 默认 是 1. 如果 \fImax-procs\fR 为 0, \fBxargs\fR 将 同时 运行 尽可能 多 的 进程. 最好 同时 用 \fI\-n\fR 选项; 不然 很 可能 只会 做 一次 exec. .SH "参见 (SEE ALSO)" \fBfind\fP(1L), \fBlocate\fP(1L), \fBlocatedb\fP(5L), \fBupdatedb\fP(1) \fBFinding Files\fP (在线 Info, 或者 打印的) .SH "[中文版维护人]" .B 唐友 \ .SH "[中文版最新更新]" .BR 2001/10/31 .SH "[中国Linux论坛man手册页翻译计划]" .BI http://cmpp.linuxforum.net