Linux shell脚本——if运算例子
来源:互联网 发布:php调用父类的属性 编辑:程序博客网 时间:2024/06/05 08:31
http://blog.csdn.net/shandong_chu/article/details/8633588
下面以具体例子来描述shell脚本中if语句的使用
#!/bin/sh
#define a variable,定义一个变量,此处等号两边不能有空格v="test shell commond"
#print the variable,且没有连字符也是支持的
echo "变量 is: " $v
#判断当前目录下是否有此文件
file="test.sh" #定义要查找的文件
#[ -f "somefile" ] :判断是否是一个文件
echo "001"
else
echo "002"
fi
#根据设置的数字大小来进行判断,然后输出结果
echo "the number is: " $num
if [ $num -gt 10 ];then
echo "the unmber is larger than 10"
elif [ $num -eq 10 ];then
echo "the number is equal with 10"
else
echo "the number is smaller than 10"
fi
以下为网络中牛人总结的内容,可供参考使用。
shell判断文件,目录是否存在或者具有权限
#!/bin/sh
myPath="/var/log/httpd/"
myFile="/var /log/httpd/access.log"
#这里的-x 参数判断$myPath是否存在,并且是否具有可执行权限
if [ ! -x "$myPath"]; then
mkdir "$myPath"
fi
#这里的-d 参数判断$myPath是否存在
if [ ! -d "$myPath"]; then
mkdir "$myPath"
fi
#这里的-f参数判断$myFile是否存在
if [ ! -f "$myFile" ]; then
touch "$myFile"
fi
#其他参数还有-n,-n是判断一个变量是否是否有值
if [ ! -n "$myVar" ]; then
echo "$myVar is empty"
exit 0
fi
#两个变量判断是否相等
if [ "$var1" = "$var2" ]; then
echo '$var1 eq $var2'
else
echo '$var1 not eq $var2'
fi
========================================
shell 判断语句
流程控制 "if" 表达式 如果条件为真则执行then后面的部分:
if ....; then
....
elif ....; then
....
else
....
fi
大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等…
通常用" [ ] "来表示条件测试。注意这里的空格很重要。要确保方括号的空格。
[ -f "somefile" ] :判断是否是一个文件
[ -x "/bin/ls" ] :判断/bin/ls是否存在并有可执行权限
[ -n "$var" ] :判断$var变量是否有值
[ "$a" = "$b" ] :判断$a和$b是否相等
-w file 用户可写为真
-x file 用户可执行为真
-f file 文件为正规文件为真
-d file 文件为目录为真
-c file 文件为字符特殊文件为真
-b file 文件为块特殊文件为真
-s file 文件大小非0时为真
-t file 当文件描述符(默认为1)指定的设备为终端时为真
######################################################### 含条件选择的shell脚本
对于不含变量的任务简单shell脚本一般能胜任。但在执行一些决策任务时,就需要包含if/then的条件判断了。shell脚本编程支持此类运算,包 括比较运算、判断文件是否存在等。基本的if条件命令选项有:
-eq —比较两个参数是否相等(例如,if [ 2 –eq 5 ])
-ne —比较两个参数是否不相等
-lt —参数1是否小于参数2
-le —参数1是否小于等于参数2
-gt —参数1是否大于参数2
-ge —参数1是否大于等于参数2
-f — 检查某文件是否存在(例如,if [ -f "filename" ])
-d — 检查目录是否存在
几 乎所有的判断都可以用这些比较运算符实现。脚本中常用-f命令选项在执行某一文件之前检查它是否存在。################################################################## 判断文件是否存在 #!/bin/sh
today=`date -d yesterday +%y%m%d`
file="apache_$today.tar.gz"
cd /home/chenshuo/shell
if [ -f "$file" ];then
echo "OK"
else
echo "error $file" >error.log
mail -s "fail backup from test" chenshuo@soufun.com <error.log
fi
- Linux shell脚本——if运算例子
- Linux shell脚本——if运算例子
- Linux shell脚本——if运算例子
- Linux shell脚本——if运算例子
- Linux Shell脚本应用——使用if判断结构
- linux shell脚本之if
- Linux Shell 脚本应用——数值运算及处理
- (7) Linux ----- Shell脚本(例子)
- linux shell脚本之if判断
- linux shell 脚本之【2】if详解
- Linux shell脚本之 if条件判断
- linux shell脚本 case和if语法
- Linux-shell脚本-if语句/case语句
- [Linux] shell脚本之if判断
- shell脚本if case for while语句小例子
- linux shell编程——if
- linux shell if 参数 && Shell 里面比较运算符写法
- shell脚本学习4——shell运算符
- Android ActionBar应用实战,高仿微信主界面的设计
- ios文件读写
- VS2010静态编译生成的.exe可执行文件,可以免安装在其他电脑直接运行
- MMSeg4J改造,使之支持中英文数字连词
- 为你详解Linux安装GCC方法
- Linux shell脚本——if运算例子
- 模态视图
- SQL like的用法 模糊查询
- 但行好事,去他妈的前程
- IOS中实现动画的三种方式
- UIBezierPath学习
- Linux计划任务Crontab实例详解
- c++类型所占的字节和表示范围
- 使用FMDB(1)--基本操作