您的位置:首页 > 理论基础 > 计算机网络

零零碎碎写的shell脚本(二):一键修改网络配置信息脚本

2015-08-22 15:21 721 查看
#!/bin/bash
ip_mod=$1
mask_mod=$2
gw_mod=$3
dns_mod=$4
hostname_mod=$5

hosts=/etc/hosts
ifcfg=/etc/sysconfig/network-scripts/ifcfg-eth1
network=/etc/sysconfig/network
resolv=/etc/resolv.conf
hwaddr=`grep -i HWADDR $ifcfg|awk -F "=" '{print $2}'`

# mod ip、mask、gw、dns、hostname
if [ $# != 5 ];then
cat << EOF
+-----------------------------------------------------------------------------------+
++++++                                              +++++
| ====   这是一个自动修改网络ip、掩码、网关、DNS、主机名的脚本                  ====|
| ====   使用方法:ip_chan ip mask gw dns hostname                            ====|
| ====   例:./ip_chan 172.17.1.1 255.255.255.0 172.17.1.254 8.8.8.8 dwcache   ====|
++++++                                              +++++
+-----------------------------------------------------------------------------------+
EOF
fi

if [ $# == 5 ];then
/bin/hostname $hostname_modf
cp -r $hosts ${hosts}.bak
echo -e "$ip_mod $hostname_mod" > $hosts

cp -r $ifcfg ${ifcfg}.bak
echo -ne "NAME:=eth1
BOOTPROTO=static
HWADDR=$hwaddr
IPADDR=$ip_mod
NETMASK=$mask_mod
ONBOOT=yes
" > $ifcfg

cp -r $network ${network}.bak
echo -ne "NETWORKING=yes
HOSTNAME=$hostname_mod
GATEWAY=$gw_mod
" > $network

cp -r $resolv ${resolv}.bak
echo -e "nameserver $dns_mod" > $resolv

service network restart

echo "ip、mask、gw、dns、hostname set OK '!'"
fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: