101个shell脚本猜数字游戏代码

首页 > 脚本专栏 > linux shell 更新日期: 2017-02-12
原本书上这个例子是教调试脚本的,它故意给出的脚本中有几个错误,教我们认识系统提示的错误,并修改运行。但比较难写出来,所以把修改好了的脚本放上来,这个脚本比较有趣味的

原本书上这个例子是教调试脚本的,它故意给出的脚本中有几个错误,教我们认识系统提示的错误,并修改运行。但比较难写出来,所以把修改好了的脚本放上来,这个脚本比较有趣味的

#!/bin/sh
 # hilow -- A simple number-guessing game

 biggest=100              # maximum number possible
 guess=0                # guessed by player
 guesses=0               # number of guesses made
 number=$(($$ % $biggest))       # random number, between 1 and $biggest

 while [ $guess -ne $number ] 
 do
  echo -n "Guess? " ; read guess
  if [ "$guess" -lt $number ] ; then
   echo "... bigger!"
  elif [ "$guess" -gt $number ] ; then
   echo "... smaller!i"
  fi
  guesses=$(($guesses + 1))
 done
 echo "Right!! Guessed $number in $guesses guesses."
 exit 0

脚本分析

#1) number=$(($$ % $biggest)) $$代表执行此shell的pid,因为每次执行shell的pid并不相同, 所以number为1-100的随机数。

#2)$guess -ne $number ,if [ "$guess" -lt $number ],elif [ "$guess" -gt $number ] ;为判断输入的数字与$number的比较。

#3)整个脚本并不复杂,但逻辑清晰明了,也很有意思。


> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!

相关文章
  • java实现的简单猜数字游戏代码
    java实现的简单猜数字游戏代码
    这篇文章主要介绍了java实现的简单猜数字游戏代码,通过随机数与逻辑判断来实现游戏功能,具有一定的参考借鉴价值,需要的朋友可以参考下本文实例讲述了java实现的简单猜数字游戏代码.分享给大家供大家参考. 具体代码如下: 代码如下:import java.util.InputMismatchException;import java.util.Scanner; ...
  • python实现猜数字游戏(无重复数字)示例分享
    这篇文章主要介绍了python实现猜数字游戏无重复数字示例,需要的朋友可以参考下 代码如下:import time, random class GuessNum:    def __init__(self):        self._num = ''        self.input_num = []        self.count = 1      ...
  • python3.3使用tkinter开发猜数字游戏示例
    这篇文章主要介绍了python3.3使用tkinter开发猜数字游戏示例,需要的朋友可以参考下利用这个小游戏可以学习一下ython3.3中tkinter的使用方法 代码如下:# -*- coding: utf-8 -*-import tkinter as tkimport sysimport randomimport re number = random.r ...
  • shell脚本结合iptables防端口扫描的实现
    这篇文章主要介绍了shell脚本结合iptables防端口扫描的实现,中间使用了inotify-tools工具,需要的朋友可以参考下网上有现在的防端口工具,如psad.portsentry,但觉得配置有点麻烦,且服务器不想再装一个额外的软件.所以自己就写了个shell脚本实现这个功能.基本思路是:使用iptables的recent模块记录下在60秒钟内扫描超 ...
  • Shell脚本实现的猜数字小游戏
    这篇文章主要介绍了Shell脚本实现的猜数字小游戏,本文的猜数字规则相对一般规则的猜数字可能难度要大不少,需要的朋友可以参考下生成的密码和用户输入可以接受重复数字.所以相对一般规则的猜数字可能难度要大不少. 本版本规则: A--数字对,位置也对B--排除A的结果后,数字对,但位置不对 开始后,系统化初始化一个4位可重复数字,如"1223" ...
  • 分享一个入门级可控多线程shell脚本代码
    这篇文章主要介绍了分享一个入门级可控多线程shell脚本代码,需要的朋友可以参考下说到shell可控多线程,网上分享的大部分是管道控制的方案.这种方案,张戈博客也曾经实战并分享过一次:<Shell+Curl网站健康状态检查脚本,抓出中国博客联盟失联站点>,感兴趣的朋友可以看看. 分享一个入门级可控多线程shell脚本方案 下面张戈博客再分享另一种 ...
猜你喜欢