是否有类似于 Ruby Object#tap
for Unix 命令管道的惯用模拟?
用例:在管道中,我想对其副作用执行命令,但隐式返回输入,以免破坏管道的链接。例如:
echo { 1, 2, 3 } |
tr ' ' '\n' |
sort |
tap 'xargs echo' | # arbitrary code, but implicitly return the input
uniq
我来自Ruby,我会这样做:
[ 1, 2, 3 ].
sort.
tap { |x| puts x }.
uniq