【发布时间】:2014-06-19 16:57:26
【问题描述】:
我必须遵循以下几行:
执行 "hostname -f >> /etc/mail/local-host-names" 做 命令“主机名-f >> /etc/mail/local-host-names” 结束
我想添加一个条件,以防文件中已经存在主机名,并且命令不应再次在文件中添加主机名。
/etc/mail/local-host-names 可能包含其他主机名,覆盖不是解决方案。
谢谢!
【问题讨论】:
我必须遵循以下几行:
执行 "hostname -f >> /etc/mail/local-host-names" 做 命令“主机名-f >> /etc/mail/local-host-names” 结束
我想添加一个条件,以防文件中已经存在主机名,并且命令不应再次在文件中添加主机名。
/etc/mail/local-host-names 可能包含其他主机名,覆盖不是解决方案。
谢谢!
【问题讨论】:
您应该使用 bash 脚本和 grep 命令。如果找到名称,则 Grep 命令返回 0,如果未找到,则返回 1。 (# 在 bash 中声明注释)。此外,您必须将变量 $HOSTNAME 设置为每次要查找的所需主机名
#!bin/sh
if grep -Fxq "$HOSTNAME" /etc/mail/local-host-names
then
# execute "hostname -f >> /etc/mail/local-host-names" do command "hostname -f >> /etc/mail/local-host-names" end
else
#do nothing?
fi
【讨论】: