shell脚本自动修改IP信息

简介:
 
  1. #!/bin/sh  
  2. # BY kerry (聆听未来)  
  3. # BLOG:http://kerry.blog.51cto.com  
  4.  
  5. # set variable  
  6. ip_mod=$1  
  7. mask_mod=$2  
  8. gw_mod=$3  
  9. dns_mod=$4  
  10. hostname_mod=$5  
  11.  
  12. hosts=/etc/hosts  
  13. ifcfg=/etc/sysconfig/network-scripts/ifcfg-eth0  
  14. network=/etc/sysconfig/network  
  15. resolv=/etc/resolv.conf  
  16. hwaddr=`grep -i HWADDR $ifcfg|awk -F "=" '{print $2}'`  
  17.  
  18. # mod ip、mask、gw、dns、hostname  
  19. if [ $# != 5 ];then  
  20. cat << EOF 
  21. +-----------------------------------------------------------------------------------+  
  22. ++++++                                              +++++  
  23. | ====   这是一个自动修改网络ip、掩码、网关、DNS、主机名的脚本                  ====|  
  24. | ====   使用方法:ip_mod ip mask gw dns hostname                    ====|  
  25. | ====   例:ip_mod 10.10.10.5 255.255.255.0 10.10.10.1 8.8.8.8 kerry           ====|  
  26. ++++++                                              +++++  
  27. +-----------------------------------------------------------------------------------+  
  28. EOF  
  29. fi  
  30.  
  31. if [ $# == 5 ];then  
  32. /bin/hostname $hostname_modf  
  33. cp -r $hosts ${hosts}.bak  
  34. echo -e "$ip_mod $hostname_mod" > $hosts  
  35.  
  36. cp -r $ifcfg ${ifcfg}.bak  
  37. echo -ne "DEVICE=eth0 
  38. BOOTPROTO=static 
  39. HWADDR=$hwaddr  
  40. IPADDR=$ip_mod  
  41. NETMASK=$mask_mod  
  42. ONBOOT=yes 
  43. > $ifcfg  
  44.  
  45. cp -r $network ${network}.bak  
  46. echo -ne "NETWORKING=yes 
  47. HOSTNAME=$hostname_mod  
  48. GATEWAY=$gw_mod  
  49. > $network  
  50.  
  51. cp -r $resolv ${resolv}.bak  
  52. echo -e "nameserver $dns_mod" > $resolv  
  53.  
  54. # restart network  
  55. service network restart  
  56.  
  57. echo "ip、mask、gw、dns、hostname set OK .................!!!!!!!"  
  58. fi  

 

本文转自king_819 51CTO博客,原文链接:http://blog.51cto.com/kerry/517921,如需转载请自行联系原作者

相关文章
|
3天前
|
Java 关系型数据库 MySQL
Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
【4月更文挑战第12天】Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
28 3
|
6天前
|
运维 监控 Shell
利用Shell脚本编写局域网监控软件:实时监测主机连接情况
本文介绍了如何使用Shell脚本创建一个局域网监控工具,以实时检查主机连接状态。脚本包括扫描IP地址范围检测主机可达性及使用`netstat`监控ESTABLISHED连接。此外,还展示了如何每60秒将连接数数据自动提交到指定网站API,以便实时跟踪网络活动。这个自动化监控系统有助于提升网络安全性和故障排查效率。
27 0
|
7天前
|
Shell
Shell脚本之流程控制语句
Shell脚本之流程控制语句
|
8天前
|
JSON 运维 监控
训练shell常用脚本练习(三)
【4月更文挑战第14天】shell代码训练(三)
29 1
|
12天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
143 0
|
12天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
138 0
|
16天前
|
弹性计算 Shell Linux
ecs服务器shell常用脚本练习(六)
【4月更文挑战第4天】shell代码训练(六)
109 0
|
21天前
|
弹性计算 Shell 应用服务中间件
ecs服务器shell常用脚本练习(四)
【4月更文挑战第4天】shell代码训练(四)
96 0
|
23天前
|
Shell
【shell】实时查看网卡流量脚本
【shell】实时查看网卡流量脚本
|
23天前
|
Shell
Shell一键检测本地存活ip是否存活
Shell一键检测本地存活ip是否存活
10 0