Fishはコマンドシーケンスと同じです - {cmd1}

Fishはコマンドシーケンスと同じです - {cmd1}

Bashでは、同じ出力を2つのコマンドにパイプできます{}。つまり、次のようになります。

cmd0 | { cmd1 ; cmd2 ;} | cmd3

cmd1とcmd2はstdinからcmd0の出力を取得し、cmd3はcmd2の出力に追加されたstdinからcmd2の出力を取得します。

この機能の名前は何ですか{}?魚にも同様の機能がありますか?

ベストアンサー1

この関数はコマンドのグループ化

内部に魚の皮、これはbashと中括弧のbegin代わりにおよびを使用して提供されるようです。バグレポートで見つけたばかりの機能です。end{}

シェルに関係なく、これを実行できる最初のコマンドは標準入力を使用します。

( bash):

$ echo foo | { sed 's/oo/aa/'; sed 's/oo/um/'; }
faa

( fish):

> echo foo | begin sed 's/oo/aa/'; sed 's/oo/um/'; end
faa

しかし、

> echo foo | begin echo cmd1 ; sed 's/oo/um/'; end
cmd1
fum

おすすめ記事