linux shell if字符串比较大小,linux中shell if 判断总结

linux shell if字符串比较大小,linux中shell if 判断总结UNIXShell里面比较字符写法-eq等于;-ne不等于;-gt大于;-lt小于;-le小于等于;-ge大于等于;-z空串;-n非空串;=两个字符相等;!=两个字符不等无论什么编程语言都离不开条件…

大家好,又见面了,我是你们的朋友全栈君。

UNIX Shell 里面比较字符写法

-eq     等于;              -ne    不等于;

-gt    大于;             -lt    小于 ;

-le    小于等于;       -ge   大于等于;

-z    空串;                   -n    非空串;

=    两个字符相等;     !=    两个字符不等

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

大体的格式如下:

if list then

do something here

elif list then

do another thing here

else

do something else here

fi

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

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 文件相关的if判断条件语句

-r file     用户可读为真

-w file     用户可写为真

-x file     用户可执行为真

-f file     文件为正规文件为真

-d file     文件为目录为真

-c file     文件为字符特殊文件为真

-b file     文件为块特殊文件为真

-s file     文件大小非0时为真

-t file     当文件描述符(默认为1)指定的设备为终端时为真

4 复杂逻辑判断

-a        与

-o       或

!       非

语法虽然简单,但是在SHELL里使用的时候,它可以实现强大的功能或执行逻辑。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157523.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JSP简单练习-获取表单数据

    JSP简单练习-获取表单数据

    2022年1月28日
    35
  • 关于 ioctl 的 FIONREAD 参数[通俗易懂]

    关于 ioctl 的 FIONREAD 参数[通俗易懂]ioctl是用来设置硬件控制寄存器,或者读取硬件状态寄存器的数值之类的。而read,write是把数据丢入缓冲区,硬件的驱动从缓冲区读取数据一个个发送或者把接收的数据送入缓冲区。 ioctl(keyFd,FIONREAD,&b)得到缓冲区里有多少字节要被读取,然后将字节数放入b里面。接下来就可以用read了。read(keyFd,&b,sizeof(b))清

    2022年7月23日
    7
  • c语言 switch错误用法,C语言switch语句的详细用法[通俗易懂]

    c语言 switch错误用法,C语言switch语句的详细用法[通俗易懂]C语言还为多分支选择提供了另一个switch语句,其一般形式为:开关(表达式){案例常量表达式1:语句1;案例常量表达式2:语句2;…条件常量表达式n:语句n;默认值:语句n+1;}语义是:计算表达式的值.将其与后续常量表达式的值一一比较.当表达式的值等于常量表达式的值时,将执行后续语句,然后不进行判断,并且在个案之后的所有后续语句将继续.如果在所有情况下表达式的值都与常量…

    2022年9月13日
    0
  • 【实例分割】1、SOLOv1: Segmenting Objects by Locations_2019[通俗易懂]

    【实例分割】1、SOLOv1: Segmenting Objects by Locations_2019[通俗易懂]文章目录一、背景二、本文方法三、本文方法的具体做法3.1问题定义3.1.1Semanticcategory3.1.2InstanceMask3.2NetworkArchitecture3.3SOLOlearning3.3.1LabelAssignment3.3.2LossFunction3.4Inference四、实验4.1主要结果4.2HowSOLOwork……

    2022年8月23日
    4
  • navicat15-mysql-cs永久激活码最新【在线注册码/序列号/破解码】

    navicat15-mysql-cs永久激活码最新【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    56
  • 数据库中存储过程语法

    数据库中存储过程语法数据库中存储过程语法本文主要总结在数据库中存储过程的语法:存储过程的创建存储过程的删除参数的使用变量的声明if条件语句语法casewhen条件语句语法循环语句语法存储过程的创建创建语法如下:@authorbyliucreateprocedurename(in[param1]type,…,out[params]type)beginsql语句1;

    2022年7月17日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号