shell脚本的if判断语句】的更多相关文章

if条件判断语句 if (表达式) #if ( Variable in Array ) 语句1 else 语句2 fi 1.测试数字大小 #!/bin/sh NUM=100 if (( $NUM > 4 )) ;then echo “this num is $NUM greater 4 !” fi 2.测试目录是否存在,如果不存在则新建目录 #!/bin/sh #judge dir exist if [ ! -d /test/wxj ];then mkdir -p /test/wxj else…
介绍了shell脚本编程之for语句.if语句的使用方法. 上部: 面向过程: 顺序执行 选择执行: if, case 循环执行: for, while, until 一.for语句 格式:      for 变量 in 列表;do         语句1;         语句2;         ...      done     例1.写一个脚本,添加10个用户,并让每个用户的密码同用户名] 复制代码代码如下:        #!/bin/bash        for I in {1..…
对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到shell脚本文件中 复制代码 代码如下: --演示环境  [root@SZDB ~]# more /etc/issue  CentOS release 5.9 (Final)  Kernel \r on an \…
转自:http://m.jb51.net/article/56553.htm 这篇文章主要介绍了Shell脚本IF条件判断和判断条件总结,本文先是给出了IF条件判断的语法,然后给出了常用的判断条件总结,需要的朋友可以参考下 前言:      无论什么编程语言都离不开条件判断.SHELL也不例外.       if list then           do something here       elif list then           do another thing here  …
参考资料:Shell脚本中执行mysql语句 需求:数据库里有张数据表存储的是用户对电影的评价(user_id movie_id rating time),但是我现在要每部电影的总评分. 解决方法: 1).写个sql文件test.sql:use movie_recommendation;select distinct movie_id from T_user_movie_rating_map; 2).在终端输入mysql -uroot -p123456 -e < test.sql > movi…
对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到shell脚本文件中 复制代码代码如下: --演示环境  [root@SZDB ~]# more /etc/issue  CentOS release 5.9 (Final)  Kernel \r on an \m…
对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到shell脚本文件中 复制代码代码如下: --演示环境  [root@SZDB ~]# more /etc/issue  CentOS release 5.9 (Final)  Kernel \r on an \m…
shell脚本中select循环语句 1. 脚本中select的语法格式 select VAR in LIST do command1 command2 ... ... commandN done select循环语句有如下的特点: select语句使用bash内部变量 PS3 的值作为它的提示符 打印到屏幕上的列表LIST中的每一项都会在前面加上一个数字编号 当用户输入的数字与某一个数字编号一致时,列表中列表的项即被赋值给VAR 如果用户输入的内容为空时,将重新显示列表中的项和提示符信息 可以…
一.分支语句 1.条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Status为1(注意与C语言的逻辑表示正好相反).例如测试两个数的大小关系: [root@VM_0_5_centos test]# var=4 [root@VM_0_5_centos test]# test $var [root@VM_0_5_centos test]# echo $? 0 [root@VM_0_5_ce…
http://bbs.chinaunix.net/thread-396805-1-1.html shell 判断语句 流程控制 "if" 表达式 如果条件为真则执行then后面的部分: if ....; then .... elif ....; then .... else .... fi 大多数情况下,可以使用测试命令来对条件进行测试.比如可以比较字符串.判断文件是否存在及是否可读等等- 通常用" [ ] "来表示条件测试.注意这里的空格很重要.要确保方括号的空格…
1.测试:检测表达式是否成立,成立则返回值为0,否则为非0 方法: 1)test  表达式 2)[ 表达式 ] 2.文件测试: -d:是否为目录 -f:是否为文件 -e:是否存在 -r:是否有读取权限 -w:是否有写入权限 -x:是否有执行权限 3.整数值比较: -eq:等于 -ne:不等于 -gt:大于 -lt:小于 -ge:大于等于 -le:小于等于 4.字符串比较: =:字符串内容相同 !=:字符串内容不相同 -z:字符串内容为空 5.逻辑测试: -a或&&:而且,两个条件同时满足才…
shell编程2 一.条件判断语句 1.按照文件类型进行判断 eg:test -e /etc/passwd  或者  [ -e /etc/passwd ]  &&echo yes || echo no 注意[]两边必须有空格 2.按照文件权限进行判断 3.两个文件之间进行比较 注:Inode是i节点号,是区别文件是否是硬链接的最好方法 ,硬链接的i节点号相同. eg:ln /etc/passwd /etc/passwdin [ /etc/passwd -ef /etc/passwdin ]…
在shell脚本编程的时候,可以通过在mysql连接命令添加-N和-e参数实现查询结果不显示列名和直接执行sql语句操作 demo $(mysql -h ${HOST} -u ${USER} -p${PASSWORD} -N -e "${queryTable}")…
目录 判断用户参数 流程控制语句 一.判断用户参数 1.1 文件判断参数 PS:$?代表上一个命令的返回值,为0表示正确执行,非0表示错误执行.详情可参考我另一篇博客:https://www.cnblogs.com/HeiDi-BoKe/p/11635473.html 补充:逻辑语句有三个(与:&&,或:||,非:!) 实例: 1.2 比较运算符 实例: # FreeMem=`free -m | grep Mem: | awk '{print $4}` # echo $FreeMem 1.…
查询员工信息 -S:静默登录 [oracle@localhost shells]$ cat shell1.sh #!/bin/bash #查询员工信息 sqlplus -S /nolog <<EOF conn scott/scott set feedback off set linesize 300 set pagesize 100 col empno for 99999 col ename for a12 col mgr for 9999 col hiredate for a20 col c…
目录 一.echo 1.1.echo命令用法 1.2.echo截取字符 二.for语句 2.1.实例 创建用户名文件 创建脚本文件 运行脚本 三.while语句 3.1.实例 创建脚本文件 运行脚本 查看用户 四.until语句 4.2实例 创建脚本文件 运行脚本 一.echo 1.1.echo命令用法 格式:echo [参数] [字符串] 常用参数 echo -n 表示输出不换行 echo -e 输出转义字符,将转义后的内容输出到屏幕上,后面可以添加很多转义符 \b相当于退格键,但前提是"\b…
变量 环境变量 局部变量 declare 定义变量类型 本地变量 local 在函数中使用 变量类型: 数值型: 1.整形 2.浮点型 3.布尔型 0 1 (真 假) (true false) 字符串: 1.普通字符和字符串 2.数组 编译语言的分类: 强类型语言: -- 数值必须被定义,才能进行处理或运算 弱类型语言: -- 编程语言可以自动识别变量类型[多态] 传参: $? 上一条命令的执行状态 0正确 1-255错误 $1 $2 ${10} 命令后面传入的脚本数据,以空格为分割符 $# 统…
1.检查用户家目录中的 test.sh 文件是否存在,并且检查是否有执行权限2.提示用户输入100米赛跑的秒数,要求判断秒数大于0且小于等于10秒的进入选拔赛,大于10秒的都淘汰,如果输入其它字符则提示重新输入:进入选拔赛的成员再进一步判断男女性别,男生进男生组,女生进女生组,如果输入错误请提示错误3.用case语句解压根据后缀名为 .tar.gz 或 .tar.bz2 到 /opt 目录4.提示用户输入内容,使用if 语句判断输入的内容是否为整数;再判断输入的内容是奇数还是偶数5.用if 语句…
题目 写一个脚本 1. 传递一个参数给脚本,此参数为用户名: 2. 如果用户存在,则执行如下任务 * 如果用户的id号小于500,显示其为管理员或系统用户: * 否则,显示其为普通用户: 3. 如果用户不存在,则添加之: 解答 #!/bin/bash username=$1 if [ "$username" = "" ]; then echo "please input a username" exit 1 fi if id $username…
1,判断一个数字是否则在1,2,3之中. #!/bin/bash read -p "pls input a number:" n case "$n" in ) echo "变量是1" ;; ) echo "变量是2" ;; ) echo "变量是3" ;; *) echo "pls input a number between 1 and 3" exit; esac 2,多级if语句改写…
通过hash建表之后,表的数据量巨大2048,那怎么去验证表是否建成功呢? 逻辑生成表名这部分就不写了.只要能建表成功,这部分的脚本肯定是有的.那么怎么在shell中执行selec查询并返回呢 只要在脚本中添加 mysql -h [ip] -P [port] -u[username] -p[password] -e 'select count(1) from dbname.tablename;' 返回结果中自然会输出返回结果…
1.计算从1到100所有整数的和2.提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和3.求从1到100所有整数的偶数和.奇数和4.执行脚本输入用户名,若该用户存在,输出提示该用户已存在:若该用户不存在,提示用户输入密码,建立用户并设立其密码5.检测指定范围主机是否通信,并将通信的主机ip输出到文件/opt/host_ip中6.用户输入密码,脚本判断密码是否正确,输入正确提示正确信息,连续输错3次则报警7.编写能够自动生成一个8位随机密码的脚本8.写个逛淘宝选购商品脚本,每家商店…
-s file 文件大小非0时为真[ -f "somefile" ] :判断是否是一个文件 [ -x "/bin/ls" ] :判断/bin/ls是否存在并有可执行权限 [ -n "$var" ] :判断$var变量是否有值 [ "$a" = "$b" ] :判断$a和$b是否相等 -r file 用户可读为真 -w file 用户可写为真 -x file 用户可执行为真 -f file 文件为正规文件为真…
方法二:使用mysql参数的方法 mysql -u$user -p$pass -D $db -e "select host from user;"当然,可以通过将传参的方式来传递 -e 后面的语句. 使用示例: cat count_tb_post_fourhour.sh #!/bin/bash count_tb_post_fourhour_keys=`/usr/bin/mysql -hrr-bp1************.mysql.rds.aliyuncs.com -uzh*****…
在实际工作中,经常会遇到某项任务需要多次执行的情况,而每次执行时仅仅是处理的对象不一样,其他命令相同.这时候可以使用for循环语句,针对不同的取值重复执行相同的命令序列. for循环语句的语法结构:  for变量名in取值列表  do 命令序列  done for语句的执行流程: 首先将列表中的第一个取值赋给变量,并执行do..done循环体中的命令序列:然后将列表中的第二个取值赋给变量,并执行循环体中命令序列,以此类推,知道列表中的取值用完,结束循环. for语句的应用 用for循环编写一个菱…
/usr/local/mysql/bin/mysql -uroot -p123456 -e " use faygo source faygo.sql select * from devquit "…
shell脚本,if判断语句报错[: too many arguments 我遇到过两种情况: 1.第一中情况就是网上大家说的,字符串变量中可能存在空格,shell解析时将其认为是多个参数,再进行判断时,无法知道该获取哪个值,例如: 脚本ee.sh: strings1="hello world" strings2="hello world" if [ $strings1 = $strings2 ] then         echo "strings1 i…
shell脚本编程入门 编程语言介绍 编程语言分为:机械语言.汇编语言和高级语言: 计算机能识别的语言为机械语言,而人类能学习的并且能够方便掌握的为高级语言,所以,我们所编写的程序就要通过编译来转换成为计算机能识别的机械语言来运行,这个过程我们叫做编译.所以,我们能够学习的一般都为高级语言: 高级语言又分为两种:静态语言和动态语言: 静态语言:编译型语言,例如C.C++.JAVA.C#等,这种语言所编写的程序,在程序开始运行前就会将程序所有的代码编译完成,再一起执行: 动态语言:解释型语言,例如…
   接着上篇博客,今天整理一下关于条件测试和条件语句方面的知识. shell脚本进阶之条件测试    在编写shell脚本时,经常需要对一些条件进行判断,可以使用测试命令test辅助完成测试过程.test命令测试特定的表达式是否成立,当条件成立时,命令执行后的返回值为0,否则为其他数值. 条件测试的基本格式有: 格式1 test EXPRESSION 格式2 [ EXPRESSION ] 注意:使用方括号时,条件两边必须加上空格. 常见的测试类型有 文件测试 数值测试 字符串测试 组合测试 文…
在之前的shell语言学习笔记中已经写过shell的几种判断语句及循环语句,也简单的介绍了shell语言判断语句和判断条件.在此再做进一步学习. test命令的测试功能 test命令用于检测系统文件及其相关属性,如检查某文件是否存在,检查某文件的权限等.判断当前目录下是否存在某文件study可以用以下命令: 1 #test -e study -e 选项是测试某文件是否存在(包括文件和文件夹),该执行结果不会输出任何信息,但是我们可以通过&&及||来改写使其展现相关信息,改写后的命令如下:…