用于小型网络,更新主机列表文件(/etc/hosts)的脚本,主机列表保存在~/company/hostlist中:
#!/bin/sh
#定义变量
TMPFILE="/tmp/hostlist" #临时文件
#指定主机列表文件
HOSTLIST=$(echo ~/company/hostlist)
#这里是需要更新的主机列表
ARGS="$*"
#为每台主机更新
for host in $ARGS;
do
echo "Create a hosts file for $host ..."
HOSTNAME=$(ssh -l root $host "hostname")
echo "127.0.0.1 $HOSTNAME localhost.localdomain localhost" >$TMPFILE
echo >>$TMPFILE
cat $HOSTLIST >>$TMPFILE
echo "update the hosts file for $host ..."
cat $TMPFILE |ssh -l root $host "cat >/etc/hosts"
echo "The hosts file on $host has been updated."
done
用法:
hostlist.sg newhost1 newhost2 newhost3 ....
#!/bin/sh
#定义变量
TMPFILE="/tmp/hostlist" #临时文件
#指定主机列表文件
HOSTLIST=$(echo ~/company/hostlist)
#这里是需要更新的主机列表
ARGS="$*"
#为每台主机更新
for host in $ARGS;
do
echo "Create a hosts file for $host ..."
HOSTNAME=$(ssh -l root $host "hostname")
echo "127.0.0.1 $HOSTNAME localhost.localdomain localhost" >$TMPFILE
echo >>$TMPFILE
cat $HOSTLIST >>$TMPFILE
echo "update the hosts file for $host ..."
cat $TMPFILE |ssh -l root $host "cat >/etc/hosts"
echo "The hosts file on $host has been updated."
done
用法:
hostlist.sg newhost1 newhost2 newhost3 ....
