내가 많이.html파일의 < 뒤에 메타 태그를 추가해야 합니다.머리> 각 파일의 여는 태그.
어떻게 해야 하나요?
vim
임무에 맞는가 ?
답변1
에서는 vim
다음을 수행할 수 있습니다.
:%s/<head\b[^>]*>/& <meta foo="bar">/g
GNU에서도 이 작업을 수행할 수 있는데 sed
, 이것이 더 적절할 수 있습니다.
for file in *.html; do
sed -i 's/<head\b[^>]*>/& <meta foo="bar">/g' "$file"
done
-i
심볼릭 링크가 깨질 수 있다는 점에 유의하세요 .
답변2
sed -i '/PATTERN/ a\
Line which you want to append' filename
이 예의 경우
sed -i '/<HEAD>/a <meta>' test.txt
<HEAD>
<HEAD>
결과:
<HEAD>
<meta>
</HEAD>
위 명령은 문자열 일치 후에 새 줄을 추가합니다. 그러나 파일의 입력 문자열이
<HEAD><TITLE></TITLE>
</HEAD>
결과:
<HEAD><TITLE></TITLE>
<meta>
</HEAD> //which is wrong.
아마도 다음과 같은 접근 방식을 시도해 볼 수 있을 것입니다.
sed -i 's/<HEAD>/<HEAD><meta>/' filename