我维护了多个邮件服务器,这些邮件服务器在每个用户文件夹中都有明文配置文件,具有以下层次结构:
domain.com
->user1
->user2
anotherdomain.com
->user3
->user4
每个用户的文件夹中都有一个需要编辑的文件。每个文件需要将第一部分更改为以下内容:
#!0 __WebmailJunk__
#if allof (spamtest, not address :all :is "From" "") {
# fileinto "Junk E-mail";
# stop;
#}
从:
#!1 __WebmailJunk__
if spamtest {
fileinto "Junk E-mail";
stop;
}
这是假设文件尚未更改。
我想我想出了如何使用以下代码一一编辑文件:
while read line
do
CHARACTER=`echo $line | cut -c 1`
if [[ $CHARACTER == "}" ]] ;
then
exit 0
fi
sed -i -e 's/^/#/' <filename>
done
还没有弄清楚如何解析每个用户目录只有一个文件夹深来编辑文件。有问题的服务器正在运行 CentOS 6.4。