tnfh.net
当前位置:首页 >> shEll中的CAsE >>

shEll中的CAsE

示例如下: echo 'Please input a number(1-4) :' read Num case $Num in 1) echo 'You input 1' ;; 2) echo 'You input 2' ;; 3) echo 'You input 3' ;; 4) echo 'You input 4' ;; *) echo 'You do not input a number between 1 to 4' ;; esac

case 的条件判断是基于字符串的,对于你这个问题可以这么来 read icase $i in20|[1][0-9]|[1-9]) echo $i ;;*) echo 'err' ;;esac 但对于一般的数值范围条件,最好用if elif else语句

if [ "$name" = "jack" -o "$name" = "may" -o "$name" = "mary" ] 注意数据间的等号不要与数据连在一起,加上空格分开,不然会当成一个整体,不会进行比较

case语句只支持shell通配符,*表示任意字符串,?表示任意字符,中括号表示字符集如[a-z]表示一个小写字母 如果要处理正则表达式可以用if [[ 字符串 =~ "正则" ]]这种形式 #!/bin/bash if [[ aaab =~ "a+b" ]] then echo aaab包含正则'"a+b"' el...

case 的条件判断是基于字符串的,对于你这个问题可以这么来 read i case $i in 20|[1][0-9]|[1-9]) echo $i ;; *) echo 'err' ;; esac 但对于一般的数值范围条件,最好用if elif else语句

case ${i} in (1) function 参数1 参数2 ... ;; (2) ... ;; (...) ... ;;esacdash manual 中的话: The syntax of the case command is case word in [(]pattern) list ;; ... esac

看上去你那个 != 前后没有加空格呀,没有空格的话就当做一个字串了,字串则为真值,于是就始终为真了,你加上空格试试。

read CHOICE case $CHOICE in 1) mountusb;; 2) umountusb;; 3) display;; 4) cpdisktousb;; 5) cpusbtodisk;; 0) quit;; *) echo "Invalid Choice! Correct Choice is (0--5)" sleep 4 clear;;

如果只做四个简单的运算这应应该可以 shell脚本代码如下: #!/bin/bash read -p "input num1:" a read -p "input num2:" b read -p "input operator:" o case $o in +) let "res=a + b" echo $res;; -) let "res=a - b" echo $res;; /) awk 'BEG...

#!/bin/bash while echo "Please enter number :" read var do echo "you number is $var" if case $var in Q) exit;; q) exit;; esac then echo "$var | 100 |60" fi done 这个是按我的理解来写的,不知道你说的那个“并显示对应的成绩标准(及格...

网站首页 | 网站地图
All rights reserved Powered by www.tnfh.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com