/*
输入一个数字 将该数字赋值给var1
调用var1 使var+1 将相加后的结果赋给var
输出var
*/
————————
条件执行
命令1;命令2 /*命令1执行完毕,无条件执行命令2*/
命令1&&命令2 /*当命令1执行成功则执行命令2,命令2执行完毕返回“成功”,否则返回“失败”*/
命令1 || 命令2 /*当命令1执行失败则执行命令2,命令1执行成功则不执行命令2*/
例句
ls~/abc || mkdir~/abc && touch~/abc/aa
touch的作用是修改文件 时间戳
-a && 逻辑与 -and
-o || 逻辑或 -or
————————
Linux流程控制结构
if语句结构[if/then/elif/else/fi]
if 条件
then
语句
elif 条件
语句
else
语句
fi
/*
如果对于:条件测试语句不是很清楚,可以参考:linux shell 逻辑运算符、逻辑表达式详解shell命令
[chengmo@centos5 ~]$ a=5;if [[ a -gt 4 ]] ;then echo 'ok';fi;
ok
*/
实例:
(test.sh)#!/bin/shscores=40;
if [[ $scores -gt 90 ]]; then
echo "very good!";
elif [[ $scores -gt 80 ]]; then
echo "good!";
elif [[ $scores -gt 60 ]]; then
echo "pass!";
else
echo "no pass!";
fi;
条件测试有:[[]],[],test 这几种,注意:[[]] 与变量之间用空格分开。
————
for … in 语句
for 变量 in seq字符串
do
语句
done
说明:seq字符串 只要用空格字符分割,每次for…in 读取时候,就会按顺序将读到值,给前面的变量。
实例
(testfor.sh):
#!/bin/sh
for i in $(seq 10); do
echo $i;
done;