シェルの2つのラベルの間にあるコメント行

シェルの2つのラベルの間にあるコメント行

インスタンスの2つの構成セクションタグ間でキャッシュを無効にする/有効にするには、ORを使用してhttpdコメントを解除/コメント解除します。sedawk

Cache/キーワードで始まる行にコメントを付けたりコメントを解除したりできますが、Expiresまだモジュールタグにコメントが残っています。開始タグと終了タグの間のすべての行に単一のコマンドでコメントアウト/コメント解除を実行する方法でコメントアウト/コメント解除を実行するにはどうすればよいですか?

これはサンプルキャッシュ構成です。

#<IfModule mod_cache.c>
#
#<IfModule mod_disk_cache.c>
# CacheRoot "/var/cache/mod_proxy"
# CacheEnable disk 
# CacheEnable disk 
# CacheEnable disk 
# CacheIgnoreCacheControl On
# CacheDirLevels 1
#</IfModule>
#
#</IfModule>

#<IfModule mod_expires.c>
#        Header set Cache-Control "max-age=604800, public"
#        ExpiresActive On
#        ExpiresDefault "access plus 1 week"
#        ExpiresByType text/cache-manifest "access plus 0 seconds"
#        ExpiresByType text/html "access plus 1 year"
#        ExpiresByType text/xml "access plus 0 seconds"
#        ExpiresByType application/xml "access plus 0 seconds"
#        ExpiresByType application/json "access plus 0 seconds"
#        ExpiresByType application/rss+xml "access plus 1 hour"
#        ExpiresByType application/atom+xml "access plus 1 hour"
#        ExpiresByType image/x-icon "access plus 1 week"
#        ExpiresByType image/gif "access plus 1 month"
#        ExpiresByType image/png "access plus 1 month"
#        ExpiresByType image/jpg "access plus 1 month"
#        ExpiresByType image/jpeg "access plus 1 month"
#        ExpiresByType video/ogg "access plus 1 month"
#        ExpiresByType audio/ogg "access plus 1 month"
#        ExpiresByType video/mp4 "access plus 1 month"
#        ExpiresByType video/webm "access plus 1 month"
#        ExpiresByType application/x-font-ttf "access plus 1 month"
#        ExpiresByType font/opentype "access plus 1 month"
#        ExpiresByType application/x-font-woff "access plus 1 month"
#        ExpiresByType image/svg+xml "access plus 1 month"
#        ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
#        ExpiresByType text/css "access plus 1 year"
#        ExpiresByType application/javascript "access plus 1 year"
#</IfModule>

<IfModule mod_cache.c>だから私は、タグが閉じるまでタグの開始間のすべての行をコメントアウトできるコマンドが欲しいです<IfModule mod_expires.c>

ベストアンサー1

この試み、

モジュールにコメントを付けたりコメントを解除したりするには、スクリプトに以下を追加します。

 if [ "$2" == uncomment ]; then
    sed -i "/<IfModule $1>/,/<\/IfModule>/ s/^#//" apache.conf
 elif [ "$2" == comment ]; then
    sed -i "/<IfModule $1>/,/<\/IfModule>/ s/^\(<\| \)/#\1/" apache.conf
 fi

スクリプトを実行するための構文:

sh script.sh <moduleName> <comment/uncomment>

例:

sh script.sh mod_disk_cache.c uncomment

おすすめ記事