• shell实验


    1.编写脚本for1.sh,使用for循环创建20账户,账户名前缀由用户从键盘输入,账户初始密码由用户输入,例如:test1、test2、test3、....、test10

            编写脚本,使用read -p提醒用户从键盘输入账户名前缀以及账户初始密码。for循环,i从0开始,使用$符截取用户输入的账户名前缀以及序号i,拼接成账户名,使用id命令判断该账户是否存在,若存在则输出该账户已存在,若不存在则新建用户,使用状态码判断是否新建了用户,成功则创建密码,否则显示用户创建失败。

    [root@server ~]# vim for1.sh

    测试:运行脚本并查看结果

    [root@server ~]# bash for1.sh

    请输入用户账户名前缀:a
    请输入账户初始密码:123456
    [root@server ~]# cat /etc/passwd | tail -20


    2.编写脚本for2.sh,使用for循环,通过ping命令测试网段的主机连通性,IP前3段由用户输入,如:输入192.168.48,则ping 192.168.48.125 - 192.168.48.135,将可以ping通的主机IP地址写入到/tmp/host_up.txt文件中,不能ping通的主机IP地址写入到:/tmp/host_down.txt文件中

            编写脚本,使用read -p提醒用户从键盘输入网段,使用for循环,主机号从125到135,IP接收网段值和主机号拼接成的ip地址,使用ping -c -w命令,测试能否通讯,将临时结果扔进黑洞。如果可以,则将相应信息写入到/tmp/host_up.txt文件中,否则将信息写入到/tmp/host_down.txt文件中。

    [root@server ~]# vim for2.sh

    运行脚本,查看结果

    [root@server ~]# bash for2.sh 


    3.使用for循环实现批量主机root密码的修改
    (1)打开多台主机
    (2)使用ssh-keygen命令建立密钥对
    (3)多台主机间通过ssh-copy-id进行免密登录
    (4)编写脚本for3.sh,通过for循环登录主机修改对方root账户密

    首先创建ip.txt文件存储另外两台主机的ip地址。

    [root@server ~]# vim ip.txt

    192.168.136.129
    192.168.136.130

    创建密钥对,并且上传公钥

    [root@server ~]# ssh-keygen -t rsa 

    [root@server ~]# ssh-copy-id root@192.168.136.129

    [root@server ~]# ssh-copy-id root@192.168.136.130

    编写脚本

    [root@server ~]# vim for3.sh

     运行脚本进行测试

    [root@server ~]# bash for3.sh 

  • 相关阅读:
    用loadrunner监视远程服务器的方法
    玉米社:百度竞价推广否词什么意思?在哪里查看?怎么添加?【全】
    Python使用MySQL数据库
    lvs学习篇
    Android集成mapbox教程
    Java使用JJWT令牌
    java毕业设计成都某4S店销售管理系统Mybatis+系统+数据库+调试部署
    chrony 时间服务器 安装
    Webmin(CVE-2019-15107)远程命令执行漏洞复现
    【无标题】
  • 原文地址:https://blog.csdn.net/m0_63636799/article/details/134087337