实用Shell脚本集锦:网络检测与用户管理

需积分: 32 44 下载量 30 浏览量 更新于2024-09-11 收藏 1KB TXT 举报
本文主要介绍了在工作中常用的几个Shell脚本,包括获取IP地址、检查网络连通性、创建用户及用户组、删除用户以及备份特定目录等操作。 1. 获取IP地址: 脚本1展示了如何遍历192.168.2.1到192.168.2.10的IP地址,并通过`ping -c1`检查网络连接。`ping`命令用于测试网络中主机的可达性,`-c1`参数表示只发送一次ICMP请求。脚本2则利用`ifconfig`命令获取当前主机的IP地址,`grep "inetaddr"`查找IP信息,`awk '{print $2}'`提取IP字段,并用`sed 's/addr://'`去除"addr:"前缀。 2. 扫描网络段内活动主机: 脚本3遍历192.168.1.1到192.168.1.254的IP,通过`ping -c1`检测存活主机,`grep "ttl"`找到存活主机的响应,`awk '{print $4}'`提取IP地址,`sed 's/://g'`移除IP地址中的冒号,结果写入临时文件`temp.txt`。最后,删除空行并将有效IP存入`ip.txt`。 3. 创建用户和用户组: 脚本4创建一个名为"class1"的用户组,并添加30个用户,用户名格式为"stu01"到"stu30"。`groupadd class1`创建用户组,然后通过`while`循环,根据用户编号生成用户名,`useradd`命令创建用户,指定家目录、用户组及相关附加组。 4. 删除用户: 脚本5删除用户"stu10"到"stu30"。`for`循环遍历10到30,`userdel -r`命令用于删除用户及其主目录。 5. 备份特定目录: 脚本6将`/etc`目录备份到`/root/bak`下,文件名格式为"yymmdd_etc.tar.gz"。首先检查`/root/bak`目录是否存在,如果不存在则创建。然后利用`date`命令获取当前日期的年月日,拼接成备份文件名。最后,使用`tar`命令进行压缩备份,并打印提示信息。 这些脚本在日常IT运维工作中非常实用,可以帮助系统管理员快速执行常见任务,提高工作效率。它们涉及了网络诊断、用户管理以及数据备份等核心领域,是Linux系统管理的基础技能。了解并掌握这些脚本的编写和应用,对提升IT专业能力有很大帮助。