我正在尝试转换这个输出:
❯ hg branches -T'{node} {branch}\n'
4b0826975cb29da26a6dd13f463241463c43c6a7 maria
5c31751cdb774f8b6337b6f64232b15903530997 default
进入以下命令:
hg bookmark -r 4b0826975cb29da26a6dd13f463241463c43c6a7 maria -f
hg bookmark -r 5c31751cdb774f8b6337b6f64232b15903530997 default -f
我试过:
hg branches -T'{node} {branch}\n' | awk '{hg bookmark -r $1 $2 -f}'
但我不认为它达到了我想要的效果。
基本上,我想使用空格来分隔参数,并使用 \n 来分隔命令。如果我可以选择不同的分隔符,那就更好了,这样就不容易出错了。
我怎样才能做到这一点?
答案1
您可以将缺失的部分添加到模板中:
hg branches -T'hg bookmark -r {node} {branch} -f\n'
如果要运行结果,请将输出通过管道传输到 shell(假设您的分支名称不包含单引号):
hg branches -T"hg bookmark -r {node} '{branch}' -f\n" | sh