文档章节

Shell字符串比较

COSE
 COSE
发布于 2015/01/04 13:51
字数 235
阅读 26
收藏 0
# 字符串比较
A="A"
B="B"
a="A"

# 单[]可以表示表示字符串是否相等
# "="和"=="等价
if [ $A == $a ]; then
    echo "[ $A == $a ] -> True"
fi

if [ $A != $B ]; then
    echo "[ $A != $B ] -> True"
fi

# 单[]比较字符串大小,需要再">"或"<"符号前加转义符"\",否则比较失败
if [ $A \< $B ]; then
    echo "[ $A \< $B ] -> True"
fi
# 不加转义符"\"比较"A"和"B",结果"A">"B"为True,说明比较失败
if [ $A > $B ]; then
    echo "[ $A > $B ] -> True(Compare Failed)"
fi


# 可以用双[[]]来比较字符串大小及是否相等
# 和[]一样可以使用"=", "==", "!=", ">", "<"
if [[ $A < $B ]]; then
    echo "[[ $A < $B ]] -> True"
fi

# 不能直接使用比较符号">=", "<="(语法错误)
# 可以通过"||"连接">"和"="来实现">="的比较,"<="亦然
# 单[]只能在[]外用"||"相连
if [ $A \< $a ] || [ $A = $a ]; then
    echo "[ $A \< $a ] || [ $A = $a ] -> True"
fi

#双[[]]可以在[[]]内相连,也可以再[[]]外相连
if [[ $A < $a || $A = $a ]]; then
    echo "[[ $A < $a || $A = $a ]] -> True"
fi




© 著作权归作者所有

共有 人打赏支持
COSE

COSE

粉丝 6
博文 22
码字总数 10162
作品 0
南京
程序员
私信 提问
chapter 12.使用结构化命令

if-then 或者: bash shell的语句会执行后面的命令(不是表达式),如果该命令退出状态码为0,位于部分的命令就会执行 if-then-else if-then-elif-then-else-fi test || [] 由于只能判断命令...

莫显辉
2017/12/26
0
0
shell编程基础(四)——条件判断

依据某些条件测试结果来决定程序的控制流向和下一步的处理动作。 在test语句中,shell一般先执行变量替换或命令替换,然后再执行条件测试。 test命令的语法格式,主要三种: test expressio...

shw23
2016/06/08
33
0
shell基础知识

Shell脚本是含有若干UNIX命令或可执行程序的文本文件。 1 运行Shell脚本 Shell脚本有两种运行方式,第一种方式是利用sh命令,把shell脚本文件名作为参数。这种执行方式要求shell脚本文件具有...

长平狐
2013/01/06
65
0
Shell脚本中的各种括号

小括号的用法 1、数组赋值 2、子Shell赋值 在子shell中变量var值为lookback,但是在上级shell中就不是这个值,可以看出是在子shell中有效的赋值 3、命令集合结果重定向 4、$()的用法 $(cmd)...

张欢19933
2016/03/07
127
0
shell基础知识

Shell脚本是含有若干UNIX命令或可执行程序的文本文件。 1 运行Shell脚本 Shell脚本有两种运行方式,第一种方式是利用sh命令,把shell脚本文件名作为参数。这种执行方式要求shell脚本文件具有...

晨曦之光
2012/03/02
276
0

没有更多内容

加载失败,请刷新页面

加载更多

Java单例模式学习记录

在项目开发中经常能遇见的设计模式就是单例模式了,而实现的方式最常见的有两种:饿汉和饱汉(懒汉)。由于日常接触较多而研究的不够深入,导致面试的时候被询问到后有点没底,这里记录一下学习...

JerryLin123
昨天
4
0
VSCODE 无法调试

VSCODE 无法调试 可以运行 可能的原因: GCC 的参数忘了加 -g

shzwork
昨天
5
0
理解去中心化 稳定币 DAI

随着摩根大通推出JPM Coin 稳定币,可以预见稳定币将成为区块链落地的一大助推器。 坦白来讲,对于一个程序员的我来讲(不懂一点专业经济和金融),理解DAI的机制,真的有一点复杂。耐心看完...

Tiny熊
昨天
4
0
5.线程实现

用于线程实现的Python模块 Python线程有时称为轻量级进程,因为线程比进程占用的内存少得多。 线程允许一次执行多个任务。 在Python中,以下两个模块在一个程序中实现线程 - _thread 模块 th...

Eappo_Geng
昨天
7
0
ServiceLoader

创建一个接口文件在resources资源目录下创建META-INF/services文件夹在services文件夹中创建文件,以接口全名命名创建接口实现类 内容me.zzp.ar.d.PostgreSQLDialectme.zzp.ar.d.Hype...

Cobbage
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部