当管道传输到 GNU 并行时去除前导和尾随空格

当管道传输到 GNU 并行时去除前导和尾随空格

当我尝试编写这样的管道时:

git branch | rg '^\*' | parallel git pull {}

我遇到了空格问题。因为分支名称有前导空格,所以并行最终会尝试运行,git pull ' foo'这是错误的。

GNU Parallel 是否有一个说法是“去掉尾随/前导空格”?或者,是否有一个单独的程序可以执行此操作?

我知道我可以:

  • 使用cut -c 3-,但只有在前导空格一致的情况下才有效
  • 使用sedor awk,但是这会导致每次都必须键入复杂的表达式

答案1

--trim rl

git branch | rg -v '^\*' | parallel --dr --trim rl git pull {}

相关内容