是否可以在多行换行符转义脚本中进行内联评论?

时间:2018-04-26 09:14:50

标签: bash

当我long multi-line piped commands in my scripts时,我想评论每条线的作用,但我还没有找到方法。

鉴于此片段:

git branch -r --merged \
| grep "  $remote"  \
| egrep -v "HEAD ->"  \
| util.esed -n 's/  \w*\/(.*)/\1/p' \
| egrep -v \
    "$(skipped $skip | util.esed -e 's/,/|/g' -e 's/(\w+)/^\1$/g' )" \
| paste -s

是否可以在行之间插入注释?似乎使用反斜杠来转义换行符会阻止我在行尾添加注释,并且我无法在反斜杠之前添加注释,因为这会隐藏转义。

我希望上述脚本看起来像什么的伪代码

似乎我不清楚(?)我想要的是什么,所以为了找到我想要的东西,它应该与此类似:

git branch -r --merged \ # list merged remote branches
| grep "  $remote"  \    # filter out the ones for $remote
| egrep -v "HEAD ->"  \  # remove some garbage

#strip some whitespace:
| util.esed -n 's/  \w*\/(.*)/\1/p' \     

#  remove the skipped branches:
| egrep -v \
    "$(skipped $skip | util.esed -e 's/,/|/g' -e 's/(\w+)/^\1$/g' )" \
| paste -s               # something else

它不必像这样完全(显然,它不是有效的语法),但类似的东西。如果直接不可能,由于语法上的限制,也许可以编写自修改代码,这些代码在执行之前会删除注释?

1 个答案:

答案 0 :(得分:2)

你可以尝试这样的事情:

git branch --remote | # some comment
    grep origin | # another comment
    tr a-z A-Z