SHELL的脚本编辑与运行

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

a.编辑脚本

[root@srever ~]# vim for1.sh
 

b.运行脚本 

[root@srever ~]# bash for1.sh 
请输入用户账户名前缀: lisa
请输入用户的密码: 123456

c.进行检验

[root@srever ~]# cat  /etc/passwd  |  tail  -20
lisa1:x:1001:1001::/home/lisa1:/bin/bash
lisa2:x:1002:1002::/home/lisa2:/bin/bash
lisa3:x:1003:1003::/home/lisa3:/bin/bash
lisa4:x:1004:1004::/home/lisa4:/bin/bash
lisa5:x:1005:1005::/home/lisa5:/bin/bash
lisa6:x:1006:1006::/home/lisa6:/bin/bash
lisa7:x:1007:1007::/home/lisa7:/bin/bash
lisa8:x:1008:1008::/home/lisa8:/bin/bash
lisa9:x:1009:1009::/home/lisa9:/bin/bash
lisa10:x:1010:1010::/home/lisa10:/bin/bash
lisa11:x:1011:1011::/home/lisa11:/bin/bash
lisa12:x:1012:1012::/home/lisa12:/bin/bash
lisa13:x:1013:1013::/home/lisa13:/bin/bash
lisa14:x:1014:1014::/home/lisa14:/bin/bash
lisa15:x:1015:1015::/home/lisa15:/bin/bash
lisa16:x:1016:1016::/home/lisa16:/bin/bash
lisa17:x:1017:1017::/home/lisa17:/bin/bash
lisa18:x:1018:1018::/home/lisa18:/bin/bash
lisa19:x:1019:1019::/home/lisa19:/bin/bash
lisa20:x:1020:1020::/home/lisa20:/bin/bash

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

[root@srever ~]# vim for2.sh

b.运行脚本 

[root@srever ~]# bash for2.sh 
请输入网段:192.168.154
up ip: 
192.168.154.128 is up
192.168.154.129 is up
 
down ip :
192.168.154.125 is up
192.168.154.126 is up
192.168.154.127 is up
192.168.154.130 is up
192.168.154.131 is up
192.168.154.132 is up
192.168.154.133 is up
192.168.154.134 is up
192.168.154.135 is up

3.使用for循环实现批量主机root密码的修改

(1)打开多台主机,创建一个文件存放主机IP

[root@srever ~]# vim ip.txt
192.168.154.129

(2)使用ssh-keygen命令建立密钥对

[root@srever ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:aOWjqiz9+jFpFUnSSl+C1SQ3XlUY6vjVl5hRCtgDCyU root@srever
The key's randomart image is:
+---[RSA 3072]----+
|    .++E=o=oo+.. |
|    ooo==+.+o o  |
|   . oooo.. .o   |
|    . .= o   .+ .|
|      + S . .o...|
|     + . o .   . |
| .  = .   .      |
|.... +           |
| .+=+            |
+----[SHA256]-----+

(3)多台主机间通过ssh-copy-id进行免密登录

[root@srever ~]# ssh-copy-id root@192.168.154.129
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.154.129 (192.168.154.129)' can't be established.
ED25519 key fingerprint is SHA256:uQorZCoLEhNo95SxCTX7DZJFlIBsQrE6RauI4AMvLWk.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? y
Please type 'yes', 'no' or the fingerprint: yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.154.129's password: 
 
Number of key(s) added: 1
 
Now try logging into the machine, with:   "ssh 'root@192.168.154.129'"
and check to make sure that only the key(s) you wanted were added.

进行验证

[root@srever ~]# ssh 192.168.154.129
Activate the web console with: systemctl enable --now cockpit.socket
 
Register this system with Red Hat Insights: insights-client --register
Create an account or view all your systems at https://red.ht/insights-dashboard
Last login: Sun Apr 16 13:52:21 2023 from 192.168.154.1
[root@srever ~]# 

(4)编写脚本for3.sh,通过for循环登录主机修改对方root账户密码

[root@srever ~]# vim for3.sh

运行脚本 

[root@srever ~]# bash for3.sh 
请输入密码:123456
更改用户 root 的密码 。
passwd:所有的身份验证令牌已经成功更新。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值