Shell /user/bin/awk:awk中的参数列表太长

Shell /user/bin/awk:awk中的参数列表太长,shell,awk,grep,Shell,Awk,Grep,可能重复: 我在shell脚本中使用awk脚本,我正在处理多个文件,每次我都从awk获取输出,在shell中处理,并将processd内容再次反馈到awk脚本中 但这里的问题是,每次处理的数据都是大约30000行,我将其存储在一个变量中,并使用-v选项将其传递到awk 所以我得到了一个错误 /usr/bin/awk:参数列表太长 如何解决这个问题的任何补救措施。。我清楚这个问题了吗您试图将太多的参数传递给awk。您不应该使用-v传递任意大量的数据;通过管道将其送入awk的标准输入 (由于我不完

可能重复:

我在shell脚本中使用awk脚本,我正在处理多个文件,每次我都从awk获取输出,在shell中处理,并将processd内容再次反馈到awk脚本中

但这里的问题是,每次处理的数据都是大约30000行,我将其存储在一个变量中,并使用
-v
选项将其传递到awk

所以我得到了一个错误

/usr/bin/awk:参数列表太长


如何解决这个问题的任何补救措施。。我清楚这个问题了吗

您试图将太多的参数传递给
awk
。您不应该使用
-v
传递任意大量的数据;通过管道将其送入awk的标准输入


(由于我不完全理解您当前如何处理数据,因此我无法在没有看到代码片段的情况下向您展示示例代码。)

请展示一些代码。我假设“/usr/awk/bin”是一个输入错误。在谷歌上搜索参数列表太长时第一次点击:这是一个奇怪的路径。。不应该是
/usr/bin/awk
错误源是您超出了命令行缓冲区。请看Ya iI了解用户点…我以某种方式解决了该错误…现在我没有向此传递任何参数,但我得到的/usr/bin/ls参数列表太长/usr/bin/expr,,参数列表太长。。为什么这个错误是因为。。。既然这些语句不接受参数,那么我怎么会得到这个呢error@User:不知何故,您正在向这些命令传递参数。例如,如何调用
ls
?是否忘记引用变量
awk-v var=“$data”…”
No I haven。。我的代码是一个循环,它完美地运行在同一个ls comamnd上,开始时没有任何错误,然后显示/ur/bin/ls error,然后崩溃。。我不知道这背后的原因