文章标题

#! /bin/sh       //告知UNIX内核使用哪个SHELL来执行该脚本 (#! 路径)
//or
#! /bin/csh -f   //后面也可带参数

echo用法

#!/bin/sh

#create by sue 2016.05.20

echo -n "Input your name:"
read NAME
echo "Hello,"$NAME"."

Shell中的变量分类
环境变量
HOME
LANG
SHELL
PATH
PS1
PS2
可在终端查看修改环境变量 echo $HOME
修改环境变量PS2 = “:” //把辅助提示符修改为:

位置变量

预定义变量
常见的预定义变量
0:/ * : 保存脚本的所有参数
$$ : 保存当前进程/脚本的PID(进程)号
$# : 脚本的参数个数
$? : 返回上个脚本的是否执行成功状态(0成功1失败)
$! : 后台运行的最后一个进程的PID(进程)号

echo "script name:"$0
echo "all parameters:"$*
echo "PID is the script":$$
echo "success of the previous command:"$? 

自定义变量
作用域:使用export定义的为全局变量,可以在当前用户的任意脚本\命令中使用;不使用expoet,作用域为整个脚本.
1.NAME = jhon //定义变量NAME并赋值
2.如需经常使用的变量可定义为一个环境变量
BACKUP_DIR = /file/backup
export BACKUP_DIR
3.不能修改值的只读变量
PI = 3.14
readonly PI
4.使用变量时,要使用变量引用符” echonInputyourname:readNAMEechoHello, NAME”.”

猜数游戏脚本

RAN = `expr $RANDOM % 10`
RAN = `expr $RAN + 1`
echo "this is a guessing game"
echo "Number range:1-10"

while true
  do
  echo -n "please enter the number you think:"
  read NUM
  if [$NUM -lt 1] || [10 -lt $NUM]
    then
      echo "you enter the number out of range"
      continue
  fi

  if [$NUM = $RAM]
    then
      echo "you guessed it"
      unset NUM RAM
      exit 0
  fi

  if [$NUM -lt $RAM]
    then
      echo"you enter the number is too small"
    else
      echo"you enter the number is too large"
  fi

done

shell 中的数组

ARRAY = {123 457 99 379 622 895 111 45 1000}
LENTH = ${#ARRAY[@]}
I = 0

while["$I" -lt "$LENTH"]
do
  J = `expr $I +1`

  while ["$J" -lt "$LENTH"]
  do

      if [ "${ ARRAY[J] }" -lt "${ ARRAY[I] }" ]
      then
    TEMP = ${ ARRAY[J] }
    ARRAY[J]  = ${ ARRAY[I] }
    ARRAY[I] = $TEMP
      fi

      J = `expr $J +1`
   done
    I = `expr $I +1`

done

echo ${ARRAY[@]}

unset ARRAY I J TEMP LENTH 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值