Трябва да добавя крайна наклонена черта към всички входни маркери, на които това липсва. Така че вместо
<input id="1" class="hello">
Ще получа:
<input id="1" class="hello" />
Как мога да направя това с помощта на sed или друг инструмент за баш?
Отговори:
5 за отговор № 1Не се препоръчва да анализирате и замествате HTML с помощта на regex. Но ако искате бързо решение на базата на обвивка, следващата команда sed трябва да работи:
sed "/<input /s#([^/])>#1/>#" file
Това ще стане /
само ако >
вече не е предшестван от наклонена черта.
PS: Имайте предвид, че вашият HTML маркер за въвеждане трябва да бъде изцяло в един ред.
1 за отговор № 2
Това трябва да работи:
sed "/<input/s,[^/]>$,"/>," file