Shell中的表达式及IF
#!/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的更多相关文章
- shell中规则表达式与特殊符号
在 bash 的操作环境中还有一个非常有用的功能,那就是通配符 (wildcard) ! 我们利用 bash 处理数据就更方便了!底下我们列出一些常用的通配符喔: 符号 意义 * 代表『 0 个到无穷 ...
- Linux shell中的一个问题 ${}带正则匹配的表达式
目前在准备龙芯项目的PMON,在研究其编译过程的时候,看到一些make 语句,百思不得其解.后来在shell编程中看到一点资料,牵扯到Shell中的正则表达式.故记录下来,以备后来查阅. 问题: 在某 ...
- shell编程系列17--文本处理三剑客之awk动作中的表达式用法
shell编程系列17--文本处理三剑客之awk动作中的表达式用法 awk动作表达式中的算数运算符 awk动作中的表达式用法总结: 运算符 含义 + 加 - 减 * 乘 / 除 % 模 ^或** 乘方 ...
- E2.在shell中正确退出当前表达式
E2.在shell中正确退出当前表达式 优雅退出当前表达式 在shell里面输出复杂的多行表达时,经常由于少输入一个引号,一直无法退出当前的表达式求值,也没有办法终止它,以前只能通过两次Ctrl+C结 ...
- shell 中的与、或表达式
今天总结一下linux shell中逻辑关机表达方式.逻辑与的表达: 1).if [ $xxx=a -a $xx=b ] 注:-a表示and的意思 2).if [ $xxx=a ] && ...
- 『忘了再学』Shell基础 — 28、AWK中条件表达式说明
目录 1.AWK的条件表达 2.条件表达式说明 (1)BEGIN (2)END (3)关系运算符 (4)说明AWK中条件表达式的执行过程 (5)AWK中使用正则表达式 (6)A~B练习 1.AWK的条 ...
- shell中各种括号的作用()、(())、[]、[[]]、{}
一.小括号,圆括号() 1.单小括号 () ①命令组.括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用.括号中多个命令之间用分号隔开,最后一个命令可以没有 ...
- Linux shell中的符号
.单小括号 () ①命令组.括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用. 括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和括号之间不必有空 ...
- shell中的循环
shell中的循环 for循环 类似于C语言的步长控制 例如: ;i<=;i++)); ); done 将1到10,依次乘以4,然后打印出来. 这里顺便提一下,shell里面表达式的计算,可以有 ...
随机推荐
- Linux设备驱动剖析之SPI(四)
781行之前没什么好说的,直接看783行,将work投入到工作队列里,然后就返回,在这里就可以回答之前为什么是异步的问题.以后在某个合适的时间里CPU会执行这个work指定的函数,这里是s3c64xx ...
- 【转载】6种.net分布式缓存解决方案
. 使用内置ASP.NET Cache (System.Web.Caching) : https://msdn.microsoft.com/en-us/library/system.web.cachi ...
- sklearn包学习
1首先是sklearn的官网:http://scikit-learn.org/stable/ 在官网网址上可以看到很多的demo,下边这张是一张非常有用的流程图,在这个流程图中,可以根据数据集的特征, ...
- 《转》Python学习(16)-python异常
转自 http://www.cnblogs.com/BeginMan/p/3171445.html 一.什么是错误,什么是异常,它们两者区别 这里解释如下:个人觉得很通俗易懂 错误是指在执行代码过程中 ...
- jQuery Sizzle选择器(三)
在Sizzle的入口方法Sizzle()中看到的一个根据浏览器来初始化document各个方法的函数setDocument(),接下来主要看一下这个方法都做了什么. 但之前有必要看一下它用到的一些Si ...
- 常见的mysql 进程state<转自网络>
Analyzing 线程是对MyISAM 表的统计信息做分析(例如, ANALYZE TABLE ). checking permissions 线程是检查服务器是否具有所需的权限来执行该语句. Ch ...
- sencha touch Container 监听超链接插件
有时候内容直接从后台获取,有可能包含超链接,打包成应用之后,点击会造成不好的后果,这样做能够用外部浏览器打开.需要Cordova支持 监听插件代码: /* *监听a标签,用外部浏览器打开链接 */ E ...
- Excel 2007表格内输入http取消自动加上超链接的功能
经常使用Excel表格工作的也许会发现,当我们在表格内输入http://XXXX时,默认情况下都会自动加上超链接,如下: 当我们点击域名准备编辑修改时,往往都会调用浏览器转到该域名之下,达不到编辑修改 ...
- [Windows]Window 7 修改系统时区
注意:编码存储为ANSI tzutil /s "China Standard Time"pause
- nginx 二级域名跳转
server { listen ; server_name m.aaoo.cn; #charset koi8-r; #access_log logs/host.access.log main; rew ...