2016-08-13 63 views
0

我正在写一些自动化获得小路,我得到了代码,但我无法理解下面的命令究竟做了什么?

sed 's;//;/;g' 
egrep "\-example (|\:)$variablename:" 

回答

1

在SED中,通常使用/作为s命令的分隔符,但任何字符会做,是很常见的选择不会出现在任何模式或替换的字符。在这种情况下,选择;作为分隔符。该命令只是将//替换为/。它相当于(IMO)更易读:[email protected]//@/@g

egrep是一个语法错误,可能应该写成:egrep "-example (:)?$variablename:",它将匹配带有或不带有:的文本。 (也就是说,如果variablename=foo,那么这将匹配-example foo:-example :foo:。这可能不是目的,但很难说,因为给定的例子是无效的语法。它似乎想提供:之间的替代或东西否则,但替代方案缺失。)

+0

非常感谢你 –