【发布时间】:2017-04-10 01:04:49
【问题描述】:
我正在编写一个脚本,该脚本应该修改文件中变量的值,看起来像这样:
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = triton.itinet.fr
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = triton, localhost.localdomain, localhost
relayhost = smtp.free.fr
home_mailbox = Maildir/
virtual_mailbox_domains = $myhostname
virtual_mailbox_base = /var/mail/
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
#virtual_alias_maps = hash:/etc/postfix/virtual
我想通过用户入口修改relayhost的值,我已经这样做了
modify_relayhost ()
{
read new_relayhost
if (test -e /etc/postfix/main.cf)
then
grep "relayhost" /etc/postfix/main.cf | cut -d= -f1 && echo $new_relayhost
fi
}
但它不会修改文件,它只是打印出名为 relayhost 的值并在提示符上写入用户的值
【问题讨论】: