返回顶部
首页 > 资讯 > 服务器 >Shell脚本IF条件判断和判断条件总结
  • 479
分享到

Shell脚本IF条件判断和判断条件总结

条件脚本Shell 2022-06-04 21:06:36 479人浏览 独家记忆
摘要

前言: 无论什么编程语言都离不开条件判断。shell也不例外。 if list then do something here elif list the

前言:
无论什么编程语言都离不开条件判断。shell也不例外。

if list then 

          do something here 

      elif list then 

          do another thing here 

      else 

         do something else here 

      fi

EX1:
#!/bin/sh

SYSTEM=`uname -s`    #获取操作系统类型,我本地是linux

if [ $SYSTEM = "Linux" ] ; then     #如果是linux的话打印linux字符串

echo "Linux" 

elif [ $SYSTEM = "FreeBSD" ] ; then   

echo "FreeBSD" 

elif [ $SYSTEM = "Solaris" ] ; then 

echo "Solaris" 

else 

echo "What?" 

fi     #ifend

基本上和其他脚本语言一样。没有太大区别。不过值得注意的是。[]里面的条件判断。

1、字符串判断

str1 = str2      当两个串有相同内容、长度时为真
str1 != str2      当串str1和str2不等时为真
-n str1        当串的长度大于0时为真(串非空)
-z str1        当串的长度为0时为真(空串)
str1         当串str1为非空时为真

2、数字的判断

int1 -eq int2    两数相等为真
int1 -ne int2    两数不等为真
int1 -gt int2    int1大于int2为真
int1 -ge int2    int1大于等于int2为真
int1 -lt int2    int1小于int2为真
int1 -le int2    int1小于等于int2为真

3、文件的判断

-r file     用户可读为真
-w file     用户可写为真
-x file     用户可执行为真
-f file     文件为正规文件为真
-d file     文件为目录为真
-c file     文件为字符特殊文件为真
-b file     文件为块特殊文件为真
-s file     文件大小非0时为真
-t file     当文件描述符(默认为1)指定的设备为终端时为真

4、复杂逻辑判断

-a         与
-o        或
!        非

结尾

语法虽然简单,但是在SHELL里使用的时候,他的功能变得强大了。

=====================================================================

附 表:

[ -a FILE ] 如果 FILE 存在则为真。
[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。
[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。
[ -d FILE ] 如果 FILE 存在且是一个目录则为真。
[ -e FILE ] 如果 FILE 存在则为真。
[ -f FILE ] 如果 FILE 存在且是一个普通文件则为真。
[ -g FILE ] 如果 FILE 存在且已经设置了SGID则为真。 [ -h FILE ] 如果 FILE 存在且是一个符号连接则为真。
[ -k FILE ] 如果 FILE 存在且已经设置了粘制位则为真。
[ -p FILE ] 如果 FILE 存在且是一个名字管道(F如果O)则为真。
[ -r FILE ] 如果 FILE 存在且是可读的则为真。
[ -s FILE ] 如果 FILE 存在且大小不为0则为真。
[ -t FD ] 如果文件描述符 FD 打开且指向一个终端则为真。
[ -u FILE ] 如果 FILE 存在且设置了SUID (set user ID)则为真。
[ -w FILE ] 如果 FILE 如果 FILE 存在且是可写的则为真。
[ -x FILE ] 如果 FILE 存在且是可执行的则为真。
[ -O FILE ] 如果 FILE 存在且属有效用户ID则为真。
[ -G FILE ] 如果 FILE 存在且属有效用户组则为真。
[ -L FILE ] 如果 FILE 存在且是一个符号连接则为真。
[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read则为真。
[ -S FILE ] 如果 FILE 存在且是一个套接字则为真。
[ FILE1 -nt FILE2 ] 如果 FILE1 has been changed more recently than FILE2, or 如果 FILE1 exists and FILE2 does not则为真。
[ FILE1 -ot FILE2 ] 如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在则为真。
[ FILE1 -ef FILE2 ] 如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。
[ -o OPTioNNAME ] 如果 shell选项 “OPTIONNAME” 开启则为真。
[ -z STRING ] “STRING” 的长度为零则为真。
[ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。
[ STRING1 == STRING2 ] 如果2个字符串相同。 “=” may be used instead of “==” for strict POSIX compliance则为真。
[ STRING1 != STRING2 ] 如果字符串不相等则为真。
[ STRING1 < STRING2 ] 如果 “STRING1” sorts before “STRING2” lexicographically in the current locale则为真。
[ STRING1 > STRING2 ] 如果 “STRING1” sorts after “STRING2” lexicographically in the current locale则为真。
[ ARG1 OP ARG2 ] “OP” is one of -eq, -ne, -lt, -le, -gt or -ge. These arithmetic binary operators return true if “ARG1” is equal to, not equal to, less than, less than or equal to, greater than, or greater than or equal to “ARG2”, respectively. “ARG1” and “ARG2” are integers.

--结束END--

本文标题: Shell脚本IF条件判断和判断条件总结

本文链接: https://lsjlt.com/news/18252.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Shell脚本IF条件判断和判断条件总结
    前言: 无论什么编程语言都离不开条件判断。SHELL也不例外。 if list then do something here elif list the...
    99+
    2022-06-04
    条件 脚本 Shell
  • Shell脚本中怎么使用IF条件判断和判断条件
    Shell脚本中怎么使用IF条件判断和判断条件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前言:      无论什么编程语言...
    99+
    2023-06-09
  • Shell脚本中if条件判断怎么写
    在Shell脚本中,条件判断通常使用if语句来实现。if语句的基本语法为:```if [ condition ]then# 如果条件...
    99+
    2023-08-11
    Shell
  • if 条件判断
    条件语句的执行过程: if 条件判断注意:1.每个条件后面要使用冒号 : ,表示条件为True时要执行的代码;2.使用缩进来划分代码块,相同缩进数的语句在一起组成一个代码块。 if...else,单条件判断 1 username_s...
    99+
    2023-01-30
    条件
  • linux脚本判断条件总结(必看)
    如下所示: -b file 若文件存在且是一个块特殊文件,则为真 -c file 若文件存在且是一个字符特殊文件,则为真 -d file 若文件存在且是一个目录,则为真 -e file 若文件存在,则为真 ...
    99+
    2022-06-04
    必看 脚本 条件
  • Python IF 条件判断
    if 语句用于控制程序的执行,基本形式为:if 判断条件: 执行语句…… else: 执行语句…… 其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。 else 为可选语句,当...
    99+
    2023-01-30
    条件 Python
  • Shell脚本中if条件判断的写法实例
    目录前言条件判断格式if 语句条件判断类型按照文件权限进行判断文件之间比较整数之间比较字符串的判断多重条件判断附:Shell if 判断语句参数总结前言 if…else… 可以说是我们在编程中...
    99+
    2022-06-05
    shell中的if判断语句怎么写 shell编程if判断 shell脚本if条件语句
  • Mysql中条件判断用法CASE-WHEN,IF,IFNULL总结
            事情初始是,在开发中有一个需求,根据某个字段匹配某个值时统计该值出现的总数,这段话可能有点绕,简单举个例子,         有如下数据表, 在score表中,sex为1表示男性,sex=0表示女性,查询时转换成汉字显示...
    99+
    2023-10-02
    mysql 数据库
  • shell脚本语言之if条件判断语句实例详解
    目录1.单分支if条件语句1.1举例:判断目录是否存在,不存在则创建2.双分支if条件语句2.1举例:监听并自动重启apache服务脚本3.多分支if条件语句3.1举例:判断用户输入的是文件还是目录4.case条件语句4...
    99+
    2022-06-05
    shell if条件判断 shell脚本else if判断 shell的if判断
  • python条件判断语句(if else)
    基本结构         python中判断语句的基本结构由if和else组成,当if后面的条件为真时,执行if下面的语句;当if后面的条件为假时,执行else下面的语句。这里条件的真假都是用bool值来作为依据的,我们知道比较运算、成员...
    99+
    2023-09-24
    python 开发语言
  • bash if条件判断的使用
    目录if格式条件测试整数测试字符测试文件测试组合条件测试在bash中,if是可以对语句做选择执行,做if条件测试有整数测试,字符测试,文件测试三种形式。 if格式 单分支语法 if 条件; then 语句1 ...
    99+
    2023-02-16
    bashif条件判断 bashif判断
  • Linux shell脚本编程if语句的使用方法(条件判断)
    if 语句格式if 条件then Commandelse Commandfi 别忘了这个结尾If语句忘了结尾fitest.sh: line 14: syntax error: unexpec...
    99+
    2022-06-04
    使用方法 语句 脚本
  • Python条件判断
    Python 条件语句需要考虑的问题:1.老婆给当程序员的老公打电话:“下班顺路买10个包子带回来,如果看到卖西瓜的,就买1个。”当晚,程序员老公手捧一个包子进了家门……老婆怒道:“你怎么就买了一个包子?!”老公答曰:“因为看到了卖西瓜的。...
    99+
    2023-01-31
    条件 Python
  • python 条件判断
    条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('yo...
    99+
    2023-01-31
    条件 python
  • mybatis中的多重if 条件判断
    目录mybatis 多重if 条件判断要注意的是mybatis常用判断语法(标签)if判断choose判断mybatis 多重if 条件判断 要注意的是 当指定某种情况的时候,条件...
    99+
    2024-04-02
  • linux脚本判断条件的示例分析
    小编给大家分享一下linux脚本判断条件的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!如下所示:-b file 若文件存在且是一个块特殊文件,则为真-c...
    99+
    2023-06-09
  • python if not in 多条件判断代码
    百度作业帮提问: python if not in 多条件 判断怎么写 s = ['1','2'] 判断条件 sta = "12345" 正常的是这样的, if "1" not in sta and "2"...
    99+
    2022-06-04
    多条 代码 python
  • linux下的IF判断条件有哪些
    本篇内容介绍了“linux下的IF判断条件有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!UNIX Shell 里面比较字符写法:-eq...
    99+
    2023-06-27
  • Python学习之if 条件判断语句
    目录1、基本 if 条件语句:2、嵌套 if 语句3、if 和 elif 搭配使用:4、if 语句中 pass总结if 语句是判断语句 常常搭配else一起使用 if 后面紧跟的是判...
    99+
    2024-04-02
  • makefile 条件判断语句
    文章目录 前言一、条件判断语句的语法说明二、ifeq / ifneq三、ifdef / ifndef代码讲解: 四、经典示例总结 前言 一、条件判断语句的语法说明 makefi...
    99+
    2023-09-14
    linux bash 服务器 Makefile
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作