env_parallel:92:参数列表太长:/usr/bin/parallel

env_parallel:92: argument list too long: /usr/bin/parallel

我正在尝试使用此处发布的解决方案:

并有一个 .zshrc 喜欢:

. $(which env_parallel.zsh)

当我调用 env_parallel 时,出现以下错误:

env_parallel:92: argument list too long: /usr/bin/parallel

我认为你 运行 版本 < 20180722 而你 运行 它是:

env_parallel echo ::: foo

这将尝试复制您的完整环境(所有别名、所有函数、所有数组和所有变量)。不幸的是 zsh 使用 execve 启动程序,并且 execve 通常只支持 128 KB 的环境。

那怎么办?如果升级到20190622env_parallel会报这个错:

env_parallel: Error: Your environment is too big.
env_parallel: Error: You can try 3 different approaches:
env_parallel: Error: 1. Run 'env_parallel --session' before you set
env_parallel: Error:    variables or define functions.
env_parallel: Error: 2. Use --env and only mention the names to copy.
env_parallel: Error: 3. Try running this in a clean environment once:
env_parallel: Error:      env_parallel --record-env
env_parallel: Error:    And then use '--env _'
env_parallel: Error: For details see: man env_parallel

所以尝试其中一个建议。

--session 从 20180522 开始支持。