我需要为缺少此项的所有输入标记添加结尾斜杠。而不是
<input id="1" class="hello">
我会得到:
<input id="1" class="hello" />
如何使用sed或其他一些bash工具执行此操作?
答案 0 :(得分:5)
建议不要使用正则表达式解析和替换HTML。但是如果你想要一个快速的基于shell的解决方案,下面的sed命令应该可以工作:
sed '/<input /s#\([^/]\)>#\1/>#' file
仅当/
前面没有斜杠时才会显示>
。
PS:请注意,您的HTML输入标记应完全在一行中。
答案 1 :(得分:1)
这应该有效:
sed '/<input/s,[^/]>$,"/>,' file