您好我是一个Linux菜鸟,而且我知道如何更换以" /"开头的行。带标签。
这是一个例子:
/Foo is awesome
我想得到
<i>Foo is awesome</i>
我将不胜感激任何帮助!
答案 0 :(得分:1)
你可以像这样使用awk和substr
:
awk '/^\//{$0 = "<i>" substr($0,2) "</i>"}1' file
如果行的开头有/
,请附加标记并使用substr
从原始行中删除斜杠。 1
为true
,因此awk会为每一行执行默认操作,即打印该行。
答案 1 :(得分:1)
sed '\#^/# {s//<i>/;s#$#</i>#;}' YourFile
# or (with maybe space before)
sed '\#^ */# {s//<i>/;s#$#</i>#;}' YourFile
另一种sed方式,这允许在这一行上工作(如果还有别的事做,而不是简单地用标记来解决)
答案 2 :(得分:0)
你可以试试下面的sed命令,
$ sed 's~^/\(.*\)~<i>\1</i>~' file
<i>Foo is awesome</i>
通过awk,
$ awk '/^\//{sub(/^\//,"<i>");sub(/$/,"</i>")}1' file
<i>Foo is awesome</i>
答案 3 :(得分:0)
$ awk 'sub("^/","<i>"){$0 = $0 "</i>"} 1' file
<i>Foo is awesome</i>