有人知道如何从源代码安装GNU并行程序,以便用颜色显示某些命令的输出吗?我发现版本20170622在运行时不显示颜色,例如, nightmare 调试=噩梦。
DEBUG=nightmare parallel node my-script.js
和输出:
然而,在Ubuntu(20141022+ds1-1)中通过apt安装安装的版本保持了以下颜色:
假设您的程序是:
echo myfoobar | grep --color foo
这会在以下情况下提供颜色: grep 检测到输出为tty。
grep
您可以使用以下命令请求GNU并行打开tty --tty . --tty公司 默认为 -j1 所以你也需要设置:
--tty
--tty公司
-j1
parallel -j100% --tty 'echo myfoobar | grep --color' ::: foo
问题是,缓冲也被禁用,因此它被激活 --ungroup 这就是为什么这不是默认值。正如您在这里看到的,作业组合的输出:
--ungroup
fu() { echo myfoobar | grep --color "$@"; } env_parallel -j100% --tty 'echo {}; fu {};sleep 0.1; echo {}; fu {}' ::: foo fo f b ba bar