文件测试和循环语句
2011-04-26 18:29
141 查看
文件测试命令:test
一般命令或操作的执行后都有返回值或者状态码,0代表操作成功,1-255代表不同的错误信息,我们也可以自己自定义个错误信息,使用exit命令指定返回值,我们怎么样判断我们的操作是否成功还可以看返回值,引用状态码使用$? 例如:echo $?查看
条件测试的格式:有三种:1 test expression 2 [ exxpression ] 3` expression `其中语句的两端都要有空格的
整数测试可以使用:
gt表示大于 ge大于等于 lt 小于 le小于等于 eq等于 ne不等于
例如A=3 B=4 [ $A -gt $B ]或者test $A -gt $B
字符串的测试:
等值:= 或者== 大于> 小于 < 大于等于 >= 小于等于 <= -n单目单个字符串是否为空 –z 是否为空,空为真
文件测试:
-d是否为目录 -e是否存在 -f是否为普通文件 -L(-h)是否为软连接 -r 是否可读(针对当前用户)
-w 可读 -x可执行
-O当前用户是否 为此文件的属主
-G 当前用户是否为此文件的属组
if判断语句的格式:
{ if 测试条件;then
…….;
fi }
例:所有偶数的和
#!/bin/bash
for I in `seq 1 100`
do
let “M=$I%2”
if [ M –eq 0 ]; then
let “SUM +=$I”
fi
done
双分支语句:
if 测试条件; then
…..
else …
fi
例如:
#!/bin/bash
DIR='/var/log'
for FILE in $DIR/*
do
if [ -f $FILE ];then
echo "$FILE is a common file"
else
echo "$FILE unkown"
fi
done
多分支语句:
if 测试条件;then
statement
....
elif 测试条件;then
statement
...
else
statement
...
fi
位置参数:
脚本的命令行参数是可以在脚本中调用
read命令,实现跟用户交互
read 变量名
-p “” 输入之前有个提示内容
变量名数量与输入的内容的空格数一致时对等赋值,
while循环
while 测试条件;do
….
done
#!/bin/bash
let I=1
let SUM=0
while [$I –le 100 ];do
SUM=$[$SUM+$I]
let “I+=1”
done
echo $SUM
bash –x 检查逻辑错误一个模拟的执行过程
一般命令或操作的执行后都有返回值或者状态码,0代表操作成功,1-255代表不同的错误信息,我们也可以自己自定义个错误信息,使用exit命令指定返回值,我们怎么样判断我们的操作是否成功还可以看返回值,引用状态码使用$? 例如:echo $?查看
条件测试的格式:有三种:1 test expression 2 [ exxpression ] 3` expression `其中语句的两端都要有空格的
整数测试可以使用:
gt表示大于 ge大于等于 lt 小于 le小于等于 eq等于 ne不等于
例如A=3 B=4 [ $A -gt $B ]或者test $A -gt $B
字符串的测试:
等值:= 或者== 大于> 小于 < 大于等于 >= 小于等于 <= -n单目单个字符串是否为空 –z 是否为空,空为真
文件测试:
-d是否为目录 -e是否存在 -f是否为普通文件 -L(-h)是否为软连接 -r 是否可读(针对当前用户)
-w 可读 -x可执行
-O当前用户是否 为此文件的属主
-G 当前用户是否为此文件的属组
if判断语句的格式:
{ if 测试条件;then
…….;
fi }
例:所有偶数的和
#!/bin/bash
for I in `seq 1 100`
do
let “M=$I%2”
if [ M –eq 0 ]; then
let “SUM +=$I”
fi
done
双分支语句:
if 测试条件; then
…..
else …
fi
例如:
#!/bin/bash
DIR='/var/log'
for FILE in $DIR/*
do
if [ -f $FILE ];then
echo "$FILE is a common file"
else
echo "$FILE unkown"
fi
done
多分支语句:
if 测试条件;then
statement
....
elif 测试条件;then
statement
...
else
statement
...
fi
位置参数:
脚本的命令行参数是可以在脚本中调用
read命令,实现跟用户交互
read 变量名
-p “” 输入之前有个提示内容
变量名数量与输入的内容的空格数一致时对等赋值,
while循环
while 测试条件;do
….
done
#!/bin/bash
let I=1
let SUM=0
while [$I –le 100 ];do
SUM=$[$SUM+$I]
let “I+=1”
done
echo $SUM
bash –x 检查逻辑错误一个模拟的执行过程
相关文章推荐
- bash之运算、测试、if语句及for循环语句
- MySQL和MSSQl使用While 语句循环生成测试数据
- 删除SQL日志语句,经测试8G日志文件都可以删除
- Shell脚本基础6-if语句练习-文件测试操作
- Mysql执行大文件sql语句 -- 未测试
- linux下Bash编程字符测试与for循环语句(五)
- 2.6循环CSV文件中的数据并使用Groovy进行测试
- 学习SAS_001_循环语句中读取数据文件
- Linux学习命令汇总四——Bash中变量.文件通配符.管道与重定向.算术运算及循环或判断语句
- MySQL与MSSQl使用While语句循环生成测试数据的代码
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
- Ansible之 模板,条件测试,循环语句 使用
- linux 文件测试与shell循环
- PHP基础2-函数/分支语句/循环语句/表单处理/文件导入/常用php函数
- 练习 3-1 在上面有关折半查找的例子中,while循环语句内共执行了两次测试,其实只要一次就足够(代价是将更多的测试在循环外执行)。重写该函数,使得在循环内部只执行一次测试。
- <Bat>批处理删除指定文件,for循环只宜有一条语句
- 删除SQL日志语句,经测试8G日志文件都可以删除
- MySQL循环语句实例教程 mysql while循环测试
- 循环文件夹 读入文件内语句并执行