博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
shell练习题20180723
阅读量:6471 次
发布时间:2019-06-23

本文共 2067 字,大约阅读时间需要 6 分钟。

hot3.png

  1. 编写shell脚本,计算1-100的和;
    [root@yong-01 20180723]# vim sum100.sh#!/bin/bashsum=0for i in `seq 1 100`do   sum=$[$sum+$i]doneecho $sum

     

  2. 编写shell脚本,要求输入一个数字,然后计算出从1到输入数字的和,要求,如果输入的数字小于1,则重新输入,直到输入正确的数字为止;
    [root@yong-01 20180723]# vim he_n.sh#!/bin/bashn=0while [ $n -le "1" ]do read -p "Please in put a nubmer,it must greater than "1": " ndonesum=0for i in `seq 1 $n`do  sum=$[$sum+$i]doneecho $sum

     

  3. 编写shell脚本,把/root/目录下的所有目录(只需要一级)拷贝到/tmp/目录下;
    [root@yong-01 20180723]# vim cp_root.sh #!/bin/bashcd /rootfor f in `ls`;do    if [ -d $f ];then        cp -r $f /tmp/    fidone

     

  4. 编写shell脚本,批量建立用户user_00, user_01, ... user_100并且所有用户同属于users组;
    [root@yong-01 20180723]# vim useradd.sh#!/bin/bashgroupadd usersfor i in `seq -w 1 100|sed "s/^0//g"`do   useradd -g users user_$idone

     

  5. 编写shell脚本,截取文件test.log中包含关键词 ‘abc’ 的行中的第一列(假设分隔符为 ”:” ),然后把截取的数字排序(假设第一列为数字),然后打印出重复次数超过10次的列;
    [root@yong-01 20180723]# vim test.sh#! /bin/bashawk -F':' '$0~/abc/ {print $1}' test.log >/tmp/n.txtsort -n n.txt |uniq -c |sort -n >/tmp/n2.txtawk '$1>10 {print $2}' /tmp/n2.txt

     

  6. 编写shell脚本,判断输入的IP是否正确(IP的规则是,n1.n2.n3.n4,其中1<n1<255, 0<n2<255, 0<n3<255, 0<n4<255)。
    [root@yong-01 20180723]# vim check_ip.sh#! /bin/bashcheckip() {        if echo $1 |egrep -q '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$' ; then                a=`echo $1 | awk -F. '{print $1}'`                b=`echo $1 | awk -F. '{print $2}'`                c=`echo $1 | awk -F. '{print $3}'`                d=`echo $1 | awk -F. '{print $4}'`                for n in $a $b $c $d; do                        if [ $n -ge 255 ] || [ $n -le 0 ]; then                                echo "the number of the IP should less than 255 and greate than 0"                                return 2                        fi                done        else                echo "The IP you input is something wrong, the format is like 192.168.100.1"                return 1        fi}rs=1while [ $rs -gt 0 ]; do    read -p  "Please input the ip:" ip    checkip $ip    rs=`echo $?`doneecho "The IP is right!"

     

转载于:https://my.oschina.net/u/3791387/blog/1861661

你可能感兴趣的文章
使用openssl进行证书格式转换
查看>>
ZOJ 3777 Problem Arrangement
查看>>
虚拟机类加载机制
查看>>
Callable和Future
查看>>
installshield12如何改变默认安装目录
查看>>
少用数字来作为参数标识含义
查看>>
ScrollView中嵌套ListView
查看>>
JAVA虚拟机05--面试必问之JVM原理
查看>>
Algs4-2.3.1如何切分数组
查看>>
uva 10815 - Andy's First Dictionary(快排、字符串)
查看>>
观察者模式
查看>>
在properties.xml中定义变量,在application.xml中取值问题
查看>>
js 数组
查看>>
Linux scp命令详解
查看>>
struct和typedef struct
查看>>
cell reuse & disposebag
查看>>
【故障处理】ORA-12545: Connect failed because target host or object does not exist
查看>>
云时代,程序员将面临的分化
查看>>
Go的基本示例
查看>>
js判断移动端是否安装某款app的多种方法
查看>>