如何在Windows中执行命令行输出而不必生成bat文件?

我做了一个小脚本,将Mercurial中的所有subrepos的最新版本(不更新它们)用于非常特定的实验(与另一个必须在不同subrepos中重做的VCS进行集成),这需要所有subrepos同步。

为此,第一步是以下命令:

cat .hgsubstate|sed -rs:^\w+\s(.*):\1:g|sed -rs:(.*):'hg pull -R \1 perforce':g 

这给我输出所有的命令我必须逐行执行,但是我在窗口中,没有评价pipe他们(我有cygwin):

 hg pull -R apps/canservice perforce hg pull -R apps/hmi perforce hg pull -R apps/lua perforce 

我不想生成一个bat文件,执行它,然后删除它,所以,有没有其他的一个单一的打击呢?

这在过去对我有效

 foo | bar | cmd.exe