모든 파일에서 Images\(.*)"를 Images/\1"로 바꾸시겠습니까?

모든 파일에서 Images\(.*)"를 Images/\1"로 바꾸시겠습니까?

나는 많은 HTML 파일을 가지고 있으며 모든 img 태그에 슬래시가 잘못된 방향으로 있습니다!

다음은 예입니다(코드의 한 줄만 제외하고 보기 쉽게 여기에서 분할함).

<a href=index.html><img src="images\homereg.png" /></a>
<img src="images\spacer.png" />
<a href=dogs.html><img src="images\dogsreg.png" /></a>
<img src="images\spacer.png" />
<a href=litters.html><img src="images\littersreg.png" /></a>
<img src="images\spacer.png" />
<a href=bredby.html><img src="images\bredbyreg.png" /></a>
<img src="images\spacer.png" />
<a href=contact.html><img src="images\contactreg.png" /></a>

지금까지 시도한 것의 문제점은 sed가 욕심이 많아서 너무 많이 일치하고 제대로 교체하지 않는다는 것입니다. 한 줄에 하나씩 대체하는 것과 같은 것이 sed -i 's|images\\\(.*\)\"|images/\1\"|g' *너무 많이 일치합니다. 나는 다른 것들을 시도했지만 모두 이것과 같은 맥락입니다.

가장 쉬운 해결책은 무엇입니까? 나는 sed에만 국한되지 않고 단지 그것을 가장 잘 알고 있으므로 그것이 내가 시도한 것입니다.

답변1

이것이 당신에게 효과가 있는지 확인하십시오

sed "s/images\\\/images\\//g"

답변2

정규식을 사용하지 마세요. images\의 모든 항목을 으로 바꾸십시오 images/.

모든 기본 텍스트 편집기는 이를 지원해야 합니다.

사용하고 싶은 경우 sed:

sed 's|images\\|images/|g' filename.html

관련 정보