就像我们通常使用的 bash
为了执行命令。但是由于bash是一个编程环境,所以我们有其他与编程相关的特性。我们可以比较字符串,其中这些字符串是一些命令的输出或错误。在本教程中,我们将研究Bash Linux中字符串比较的不同用例。
null
与平等相比
比较字符串最常用的例子是比较相等性。我们可以逐个比较两个字符串是否相等,然后根据结果返回一些值或字符串。在本例中,我们将检查两个字符串变量 $s1
$s2
并以字符串形式返回结果 EQUAL
或 NOTEQUAL
. 我们将使用 ==
用于字符串相等性检查。 -eq
将不起作用,因为它只用于数字或整数。
s1='poftut's2='poftut'if [ "$s1" == "$s2" ] ; then echo "EQUAL"; fi

比较是否不相等
我们可以用 not
这种逻辑很有用,就像密码检查一样。我们将检查存储的密码和提供的密码。我们将使用 !=
作为不等式算子。
password="secret"read provided_passwordif [ "$password" != "$provided_password" ] ; then echo "Wrong Password"; fi

如我们所见,提供的密码与 secret
我们打印 Wrong Password
到屏幕上。
在实例中比较大小写
而比较字符串的大小写敏感性是重要的因素。默认行为是比较区分大小写的字符串,但在某些情况下,我们可能需要比较它们不区分大小写。我们可以使用bash提供的 nocasematch
功能。此功能将完全禁用bash的区分大小写功能。
shopt -s nocasematchs1='poftut's2='PoftuT'[[ "$s1" == "$s2" ]] && echo "EQUAL" || echo "NOT EQUAL"

相关文章: 如何在Bash中提示输入
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END