如果想向命令发送很长的参数,如何避免“xargs:参数行太长”问题?

如果想向命令发送很长的参数,如何避免“xargs:参数行太长”问题?

假设我有一个可执行脚本process_image,可以对 Base 64 编码图像执行操作。我将每个图像images_file逐行存储在文件中。的每一行images_file都是一个 Base 64 编码的图像。有些行很长,因此返回以下内容xargs: argument line too long

cat images_file | xargs -L1 process_image

我想进行修改process_image以获取整个标准输出cat images_file,然后使用简单的 while 循环遍历每一行,但我的同事建议不要采用这种方法。内部是否xargs -L1也使用与 相同的机制while?使用如何xargs比使用 a 更可取while?可以处理的最大参数长度是多少xargs?有什么方法可以在保持该cat <file> | xargs -L1 <executable_script>方法的同时克服这个问题?

相关内容