用于Unix命令管道的惯用语模拟Ruby的’Object#tap`?
发布时间:2020-12-15 21:46:11 所属栏目:安全 来源:网络整理
导读:对于Unix命令管道,Ruby的Object#tap是否有惯用的类比? 用例:在管道中我想为其副作用执行一个命令,但是隐式返回输入,以便不破坏管道的链接.例如: echo { 1,2,3 } | tr ' ' 'n' | sort | tap 'xargs echo' | # arbitrary code,but implicitly return the i
对于Unix命令管道,Ruby的Object#tap是否有惯用的类比?
用例:在管道中我想为其副作用执行一个命令,但是隐式返回输入,以便不破坏管道的链接.例如: echo { 1,2,3 } | tr ' ' 'n' | sort | tap 'xargs echo' | # arbitrary code,but implicitly return the input uniq 我来自Ruby,在那里我会这样做: [ 1,3 ]. sort. tap { |x| puts x }. uniq 解决方法
tee命令类似;它将其输入写入标准输出以及一个或多个文件.如果该文件是进程替换,我相信你会得到相同的效果.
echo 1 2 3 | tr ' ' 'n' | sort | tee >( **code** ) | uniq 进程替换中的代码将从其标准输入读取,这应该与uniq的调用最终看到的相同. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |