shell脚本练习题

1、编写hello world脚本

[root@proxy opt]# vim a.sh 
#!/bin/bash
echo  "hello world"

2、编写一个脚本用于创建Linux账号并设置密码,带参数形式#!/bin/bash

[root@proxy opt]# vim b.sh 
if [ $# -lt 2 ];then
echo "请输入你要创建的用户名及密码"
exit 2
id $1 &> /dev/null
elif [ $? -eq 0 ];then
echo "用户已存在"
else
useradd $1 &> /dev/null
echo $2 | passwd --stdin $1 &> /dev/null
echo "$1用户创建成功"
fi

3、判断用户是否是root管理员,是的话安装http服务

[root@proxy opt]# vim c.sh 
#!/bin/bash
if [ root == "$USER" ];then
yum -y install httpd  &> /dev/null
systemctl start  httpd
echo "httpd 下载好了"
else
echo "你不是root用户,无法下载httpd"
exit 2
fi
                      
4、编写一个脚本用户创建Linux账户,提示用户输入用户名和密码。要求输入密码时屏蔽输出。

[root@proxy opt]# vim test06.sh
#!/bin/bash
#这是一个创建用户的测试脚本
read -p "请输入你要创建的用户名:" a
id $a  &> /dev/null
if [ $? -eq 0 ];then
echo "用户已存在"
exit 2
else
useradd  $a  &> /dev/null
stty -echo
read -p "请设置新用户的密码(默认123):" b
stty echo 
echo ${b:-123} | passwd --stdin $a &> /dev/null
echo "$a用户创建成功"
fi

5、编写一个脚本,附带3个参数(整数),根据大小排序输出

[root@proxy opt]# vim d.sh 
#!/bin/bash
read -p "请输入一个整数: " a
read -p "请输入一个整数: " b
read -p "请输入一个整数: " c
d=0
if [ $a -gt $b ];then
   d=$a
   a=$b
   b=$d
fi
if [ $a -gt $c ];then
   d=$a
   a=$c
   c=$d
fi
if [ $b -gt $c ];then
   d=$b
   b=$c
   c=$d
fi
echo "排序后数据为:$c,$b,$a"

6、测试某个网段的主机哪些开机,哪些关机
提示:使用ping命令

[root@proxy opt]# vim e.sh 
#!/bin/bash
#这是一个ping的测试脚本
x=0
y=0
read -p "请输入ip地址网段" ip
for i in {1..254}
do
    ping -c 3 -i 0.2 -W 1 176.130.$ip.$i &> /dev/null
    if [ $? -eq 0 ] ; then
        echo "Host 192.168.4.$i is 通了."
        let x++
    else
        echo "Host 192.168.4.$i is down."
        let y++
    fi
done
echo "有$x台通了,$y台没通"

7、批量修改文件名,将当前路径下所有为.txt结尾的改为.doc
[root@proxy opt]# vim f.sh 
#!/bin/bash
for i in `ls *.txt`    找出所有.txt文件,逐一交给for循环
do
        n=${i%.*}        去尾, 得到不带扩展名的文件名
        mv $i $n.doc    与.doc重新组合
done

8、对1到100的数字进行求和
[root@proxy opt]# vim h.sh 
vim h.sh 
#!/bin/bash
seq -s + 100|bc

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值