그것은 "sed"인 것 같고 나는 결코 친구가 될 수 없을 것입니다 ...
특정 범위(다른 패턴 내) 내의 패턴을 찾고 바꾸는 방법은 무엇입니까?
즉, AllowOverride None
다음 범위에서:를 찾아 다음으로 바꿉니다.AllowOverride All
...
<Directory "/var/www/html">
some text
more text
some comments
AllowOverride None
more text
</Directory>
...
참고하세요(아직 수행되지 않은 경우): 이것은 더 많은 "모듈"을 포함하는 httpd.conf와 관련되어 있으며 모두 다음으로 끝납니다.</Directory>
이 명령은 yaml 파일에서 사용되므로 한 줄의 코드를 사용하여 이를 구현하는 것이 좋을 것입니다(알고 있지만 한 줄의 코드는 매우 빨리 보기 흉해질 수 있습니다...).
또한: 저는 sed를 사용합니다. (필수입니다. 이유는 묻지 마세요. :))
답변1
GNU sed 사용:
sed -i -e '/<Directory "\/var\/www\/html">/,/<\/Directory>/{s/AllowOverride None/AllowOverride All/}' filename