#!/bin/bash
#你值得收藏的四则表达式运算。
val1=1
val2=1
val3=1
val4=1
val5=1
val6=1
val7=1 let val1++
((val2++))
val3=$(($val3+1))
val4=`expr $val4 + 1 `
val5=`bc<<<$val5+1`
val6=`echo "$val6+1"|bc`
val7=$[ $val7+1 ] echo 'val1=' $val1
echo 'val2=' $val2
echo 'val3=' $val3
echo 'val4=' $val4
echo 'val5=' $val5
echo 'val6=' $val6
echo 'val7=' $val7

大于 -gt (greater than) 
小于 -lt (less than) 
大于或等于 -ge (greater than or equal) 
小于或等于 -le (less than or equal) 
不相等 -ne (not equal)

 

你应该了解的条件控制语句。

#!/bin/bash
#
val=1
if test $val -eq 1;then
echo "hello word!"
fi #!/bin/bash
#
val=1
if [ $val -eq 1 ];then
echo "hello word!"
fi #!/bin/bash
#
val=1
[ $val -eq 1 ] && {
echo "hello word!"
} #[]//不支持正则表达式,竟然是系统命令。
#[[]]//支持正则表达式,却不是系统命令。 #!/bin/bash
val=1
[[ $val -eq 1 ]] && {
echo "hello word!"
}
#!/bin/bash
#输入一个用户判断该用户是否存在。
#read -p "please input your user:" USER
#a=`cut -d ":" -f1 /etc/passwd| grep "$USER"` while true
do
if [ "$USER" == "$a" ];then
echo "yes!this user is exit!!!"
break
else
echo "this user no exit!!!"
read -p "please input it again:" USER
a=`cut -d ":" -f1 /etc/passwd| grep "$USER"`
fi
done

简单shell 案例,求3个数中的最大值。

  

 read a;read b; read c;
max=$a
if [ $max -lt $b ];then max=$b;fi
if [ $max -lt $c ];then max=$c;fi
echo $max
echo "max:${max},a:${a},b:${b},c:${c}"

  

注意:分号只是为了体现换号操作,像我们上面写的IF,就没有分号,因为有换行。

Shell中的表达式及IF的更多相关文章

  1. shell中规则表达式与特殊符号

    在 bash 的操作环境中还有一个非常有用的功能,那就是通配符 (wildcard) ! 我们利用 bash 处理数据就更方便了!底下我们列出一些常用的通配符喔: 符号 意义 * 代表『 0 个到无穷 ...

  2. Linux shell中的一个问题 ${}带正则匹配的表达式

    目前在准备龙芯项目的PMON,在研究其编译过程的时候,看到一些make 语句,百思不得其解.后来在shell编程中看到一点资料,牵扯到Shell中的正则表达式.故记录下来,以备后来查阅. 问题: 在某 ...

  3. shell编程系列17--文本处理三剑客之awk动作中的表达式用法

    shell编程系列17--文本处理三剑客之awk动作中的表达式用法 awk动作表达式中的算数运算符 awk动作中的表达式用法总结: 运算符 含义 + 加 - 减 * 乘 / 除 % 模 ^或** 乘方 ...

  4. E2.在shell中正确退出当前表达式

    E2.在shell中正确退出当前表达式 优雅退出当前表达式 在shell里面输出复杂的多行表达时,经常由于少输入一个引号,一直无法退出当前的表达式求值,也没有办法终止它,以前只能通过两次Ctrl+C结 ...

  5. shell 中的与、或表达式

    今天总结一下linux shell中逻辑关机表达方式.逻辑与的表达: 1).if [ $xxx=a -a $xx=b ] 注:-a表示and的意思 2).if [ $xxx=a ] && ...

  6. 『忘了再学』Shell基础 — 28、AWK中条件表达式说明

    目录 1.AWK的条件表达 2.条件表达式说明 (1)BEGIN (2)END (3)关系运算符 (4)说明AWK中条件表达式的执行过程 (5)AWK中使用正则表达式 (6)A~B练习 1.AWK的条 ...

  7. shell中各种括号的作用()、(())、[]、[[]]、{}

    一.小括号,圆括号() 1.单小括号 ()    ①命令组.括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用.括号中多个命令之间用分号隔开,最后一个命令可以没有 ...

  8. Linux shell中的符号

    .单小括号 () ①命令组.括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用. 括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和括号之间不必有空 ...

  9. shell中的循环

    shell中的循环 for循环 类似于C语言的步长控制 例如: ;i<=;i++)); ); done 将1到10,依次乘以4,然后打印出来. 这里顺便提一下,shell里面表达式的计算,可以有 ...

随机推荐

  1. 给Repeater控件里添加序号的5种方法

    Repeater是我们经常用的一个显示数据集的数据控件,经常我们希望在数据前显示数据的序号,那么我们该怎么为Repeater控件添加序号呢?下面编辑为大家介绍几种常用的为Repeater控件添加序号的 ...

  2. css笔记——文本样式

    聊聊text-decoration.text-indent.text-transform.letter-spacing.word-spacing.vertical-align.下面是一些常用设置文本样 ...

  3. OpenStack Networking – FlatManager and FlatDHCPManager

    最好的分析FlatDHCPManager的源文,有机会把这篇翻译了 =========================== Over time, networking in OpenStack has ...

  4. jquery validate使用笔记

    1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家.     1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素  3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...

  5. backface-visibility 属性

    图片img加了backface-visibility 属性, 图片变清晰, 原因不明 a,img{ backface-visibility:hidden; -webkit-backface-visib ...

  6. Rails: could not connect to database postgres: FATAL: Peer authentication failed for user "username"

    /var/lib/pgsql/9.2/data/pg_hba.conf 打开之后找到 local all postgres/all peer 改成 local all postgres trust 保 ...

  7. 【CF736D】Permutations 线性代数+高斯消元

    [CF736D]Permutations 题意:有一个未知长度为n的排列和m个条件,第i个条件$(a_i,b_i)$表示第$a_i$个位置上的数可以为$b_i$.保证最终合法的排列的个数是奇数.现在有 ...

  8. 【CF878E】Numbers on the blackboard 并查集

    [CF878E]Numbers on the blackboard 题意:给你一个长度为n个数列,你每次可以进行如下操作: 选取两个相邻的数x,y(x在y左面),然后将这两个数去掉,用x+2y替换它. ...

  9. 【笔记】javascript权威指南-第二章-词法结构

    词法结构 //本书是指:javascript权威指南    //以下内容摘记时间为:2013.7.28   字符集 UTF-8和UTF-16的区别?Unicode和UTF是什么关系?Unicode转义 ...

  10. Xcode 6 下添加pch头文件

    没错了,Xcode 6 有着许多坑,例如新建的工程里没有默认的pch文件,当然本质上应该是为了提高编译的速度,但却让开发略微有点不方便. 话不多说,其实新建很简单 1.先新建一个PCH文件 2.设置头 ...