shell 批量删除指定虚拟主机配置脚本
有个需求,过期网站批量删除其配置。apache的虚拟主机:
<VirtualHost *:80>
DocumentRoot /opt/www
ServerName www.aaa.com
</VirtualHost>
虚拟主机的配置,不一定就是上面这样的简单4行,有些多几行。肯定必须是在<VirtualHost *:80>行,和</VirtualHost>行 之间的。
这样的虚拟主机有几百个。需要删除的域名我已经整理出来了有几十个。
打算写个脚本一次删除了。手工删除几十个,感觉太慢,太2了。
我有个思路: 域名定位行号,以此行号向上匹配<VirtualHost *:80>关键字的 最近的行号,向下同理。
然后就简单了,sed 删除 上~下 的行。
我个人的难点就在于,如何做到,向上匹配<VirtualHost *:80>关键字的 得到 最近的行号。向下同理。
想了半天也不知道怎么实现,或多工具结合。或其他实现方法。
还请大家多多指教。谢谢。 本帖最后由 linux_c_py_php 于 2012-10-12 18:26 编辑
用脚本吧, 哥, 别让shell累死, 你得读懂<sed & awk>估计才能处理了多行的东西.
python/php/perl, 全配置文件读入内存, 一个正则匹配删干净了. 本帖最后由 lxxpsp2007 于 2012-10-13 17:26 编辑
回复 2# linux_c_py_php
谢谢,我用 shell脚本 做到了。
页:
[1]