设为首页 收藏本站
查看: 959|回复: 0

初学者必看的shell编程举例

[复制链接]

尚未签到

发表于 2018-8-24 06:15:06 | 显示全部楼层 |阅读模式
初学者必看的shell编程举例
  1.猜我生日
  #!/bin/bash
  #猜我生日,作者笑笑,2014-2-9完工
  D=0
  echo "猜猜我生日吧,我是哪一年"
  while true
  do
  read A
  let D++
  if [ $A -lt 1993 ]
  then
  echo "我有那么老吗?再猜猜看哦! "
  elif [ $A -eq 1993 ]
  then
  echo "小子,眼力不错嘛?"
  break
  else
  echo "我有那么小吗?再猜猜看哦!"
  fi
  done
  echo "那再猜猜我是哪月的吧!"
  while true
  do
  read B
  let D++
  if [ $B -le 6 ]
  then
  echo " 那是一个很炎热的季节!"
  elif [ $B -eq 7 ]
  then
  echo "没错,我就是七月份的巨蟹座!"
  break
  else
  echo "那个季节没有雪花飘落!"
  fi
  done
  echo "想知道我是哪一天的吗?"
  while true
  do
  read C
  let D++
  if [ $C -lt 15 ]
  then
  echo "那天是巨蟹座的尾巴!"
  elif [ $C -eq 22 ]
  then
  echo "你总共猜了${D}次"
  echo "哈哈!1993-07-22就是我的生日,记好了哦!"
  break
  else
  echo "那天是狮子做的头!"
  fi
  done
  2.整人的心理测试题
  #!/bin/bash
  #整人的心理测试题
  echo " ----------------------------------------"
  echo "|这是一道高智商的心里测试题,作者xiaoxiao|"
  echo " ----------------------------------------"
  echo
  echo "做题前要有心理准备哦!"
  echo "  你被困在一个孤岛上,船只能载一个人,你需要选择"
  echo "A 抢船走人"
  echo "B 杀死美女抢船走人"
  echo "C 留下美女天天云雨"
  echo "D 放走美女自己等死"
  echo "请您做出选择,并按Enter键确认"
  F=0
  G="您可尝试做出别的选择"
  while [ $F -lt 4 ]
  do
  read E
  let F++
  case "$E" in
  A)
  if [ $F -ne 4 ]
  then
  echo "禽兽!"
  echo "$G!"
  else
  echo "禽兽!欢迎下次再来哦!"
  fi
  ;;
  B)
  if [ $F -ne 4 ]
  then
  echo "禽兽不如!"
  echo "$G!"
  else
  echo "禽兽不如!欢迎回答笑笑问答!"
  fi
  ;;
  C)
  if [ $F -ne 4 ]
  then
  echo "比禽兽还禽兽!"
  echo "$G"
  else
  echo "比禽兽还禽兽!欢迎回答笑笑问答!"
  fi
  ;;
  D)
  if [ $F -ne 4 ]
  then
  echo "不但不如禽兽,还是个蠢货!"
  echo "$G"
  else
  echo "不但不如禽兽,还是个蠢货!拜拜哦!"
  fi
  ;;
  *)
  echo "请您做出正确选择!"
  esac
  done
  3.登陆时查看系统状态信息
  #!/bin/bash
  echo 系统版本
  /bin/cat /etc/redhat-release
  echo "系统内核"
  uname=`uname -r`
  echo "kernel $uname on an i686"
  echo "本机网卡ip"
  ifconfig | grep "inet addr" | awk '{print $2}' | awk -F: '{print $2}' | cat -n
  echo "交换内存"
  free -m | grep Swap | awk '{print $2}'
  echo "运行进程数"
  allps=`/bin/ps aux| wc -l`
  echo "Running Processes:$allps"
  echo "登陆用户数"
  alluser=`/usr/bin/who | wc -l`
  echo "Login users:$alluser"
  echo "磁盘利用率"
  quota=`df -hT | grep "/$" | awk '{print $6}'`
  echo "Usage of / Filesystem:$quota"
  4.检查服务是否开启,没开启会自动启动服务
  #!/bin/bash
  #this is else
  A=`/usr/bin/pgrep $1`
  if [ "$A" != "" ]
  then
  echo $1 is running
  else
  echo $1 NOT running
  /sbin/service $1 start
  fi
  5.简单的整数计算器
  #!/bin/bash
  #2014-2-9修订版完工
  echo " ----------------------------------"
  echo "|这是一个简单的整数计算器,作者YUAN|"
  echo " ----------------------------------"
  echo
  while :
  do
  read -p  "请输入一个整数: " nu
  expr $nu + 0 &> /dev/null
  if [ $? -eq 0 ]
  then
  echo "第一个数是$nu"
  echo
  break
  else
  echo "您输入的$nu不是整数请重新输入"
  fi
  done
  while :
  do
  read -p  "请输入二个整数: " nu2
  expr $nu2 + 0 &> /dev/null
  if [ $? -eq 0 ]
  then
  echo "第二个数是$nu2"
  break
  else
  echo "您输入的$nu2不是整数请重新输入"
  fi
  done
  echo  "------------------"
  echo "|  1.加法          |"
  echo "|  2.减法          |"
  echo "|  3.乘法          |"
  echo "|  4.除法          |"
  echo  "------------------"
  while :
  do
  read -p "请输入您想执行的算法:" me
  case $me in
  "1")
  sum=`expr $nu + $nu2`
  echo "$nu+$nu2=$sum"
  if [ $? -eq 0 ]
  then
  exit 0
  fi
  ;;
  "2")
  jian=`expr $nu - $nu2`
  echo "$nu-$nu2=$jian"
  if [ $? -eq 0 ]
  then
  exit 0
  fi
  ;;
  "3")
  chen=`expr $nu \* $nu2`
  echo "$nu*$nu2=$chen"
  if [ $? -eq 0 ]
  then
  exit 0
  fi
  ;;
  "4")
  chu=`expr $nu / $nu2`
  echo "$nu/$nu2=$chu"
  if [ $? -eq 0 ]
  then
  exit 0
  fi
  ;;
  * )
  echo "请在1、2、3、4之间做选择!"
  esac
  done
  6.局域网FTP扫描
  #!/bin/bash
  #FTP扫描,作者笑笑,2014-2-11
  /sbin/service iptables stop &> /dev/null
  /user/sbin/setenforce 0 &> /dev/null
  A=192.168.1.
  B=1
  while [ $B -lt 255 ]
  do
  wget ftp://$A$B &> /dev/null
  if [ $? -eq 0 ]
  then
  echo "主机 ${A}${B} 匿名ftp连接成功"
  fi
  let B++
  done
  7.局域网IP扫描
  #!/bin/bash
  #这是一个局域IP网扫描脚本
  A=192.168.1.
  for IP in {10..20}
  do
  ping -c 1 -i 0.2 -w 1 ${A}${IP} &> /dev/null
  if [ $? -eq 0 ]
  then
  echo "host ${A}${IP} this is up"
  else
  echo "host ${A}${IP} this is down"
  fi
  done
  8.局域网IP,MAC地址扫描
  #!/bin/bash
  #局域网IP,MAC地址扫描,作者笑笑,2014-2-11
  A=192.168.1.
  B=1
  while [ $B -lt 255 ]
  do
  arping -c 1 -w 1 $A$B | grep Unicast | awk '{print $4,$5 }'
  let B++
  done
  9.用for语句批量添加用户
  #!/bin/bash
  #这是个批量添加用户的脚本
  USER=xiao
  A=123
  for NAME in {1..10}
  do
  useradd ${USER}$NAME &> /dev/null
  echo "${USER}${NAME}${A}" | passwd --stdin ${USER}$NAME &> /dev/null
  done
  10.用while和if语句批量添加用户
  #!/bin/bash
  #批量添加用户脚本,作者笑笑,2014-2-9
  USER=xiao
  A=2
  while :
  do
  useradd ${USER}$A &> /dev/null
  echo "${USER}${A}123" | passwd --stdin ${USER}$A &> /dev/null
  A=`expr $A + 2`
  if [ $A -eq 20 ]
  then
  exit 0
  fi
  done
  11.用while批量添加用户
  #!/bin/bash
  #批量添加用户脚本,作者笑笑,2014-2-9
  USER=xiao
  A=2
  while [ $A -le 20 ]
  do
  useradd ${USER}$A &> /dev/null
  echo "${USER}${A}123" | passwd --stdin ${USER}$A &> /dev/null
  A=`expr $A + 2`
  done
  12.计算器
  #!/bin/bash
  #xiaoxiao
  echo 欢迎使用笑笑计算器
  echo '请用 + - \* / 来做运算'
  which :
  do
  read A
  B=$(expr $A)
  echo "您计算的结果为$B"
  done


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-555643-1-1.html 上篇帖子: shell脚本命令学习(一) 下篇帖子: shell 脚本调用java进程
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表