首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命令序列等效的fish -{ cmd1;cmd2;}

命令序列等效的fish -{ cmd1;cmd2;}
EN

Unix & Linux用户
提问于 2020-02-06 18:35:05
回答 1查看 222关注 0票数 2

在bash中,可以使用{}将相同的输出输送到两个命令,即如下所示:

代码语言:javascript
复制
cmd0 | { cmd1 ; cmd2 ;} | cmd3

cmd1和cmd2在stdin中获得cmd0的输出,cmd3在stdin中获得附加到cmd2输出的cmd2的输出。

这个{}特性的名称是什么,在鱼中有等效的吗?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-02-06 19:01:07

该特性称为命令分组。

鱼壳中,它似乎是通过使用beginend来代替bash的{}大括号来提供的--这是我从bug报告中发现的一个特性:

请注意,不管shell如何,能够这样做的第一个命令将使用标准输入ex。

(bash):

代码语言:javascript
复制
$ echo foo | { sed 's/oo/aa/'; sed 's/oo/um/'; }
faa

(fish):

代码语言:javascript
复制
> echo foo | begin sed 's/oo/aa/'; sed 's/oo/um/'; end
faa

代码语言:javascript
复制
> echo foo | begin echo cmd1 ; sed 's/oo/um/'; end
cmd1
fum
票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/566171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档