感谢 Steeldriver 的评论,它引导我找到了答案。
管道运算符仅在命令接受来自 stdin 的参数时才起作用,在这种情况下,像 touch 或 rm 这样的命令则不起作用,另一种解决方案是使用命令替换,如示例中所示
touch $(echo {1..3})
Run Code Online (Sandbox Code Playgroud)
或者通过使用 xargs 将输入从标准输入转换为命令的参数,因此可以执行以下操作
echo {1..3} | xargs touch
Run Code Online (Sandbox Code Playgroud)
就如此容易