shell学习19:字符串比较(-n,-z)

TEST1和TEST2可以看出,=和==都可以用于字符串比较,而且不会改变字符串的值;

TEST3,-n选项,如果字符串不是空的,则返回真,和TEST5一样;

TEST4,-z选项,如果字符串是空的,则返回真。

测试代码:

#!/bin/bash
#
str1="test"
str2="test2"
str3=""
echo "TEST1: ="
if [ $str1 = $str2 ]
then 
	echo "line8:they are same strings."
fi
echo "str1 not been changed"
echo $str1
echo "TEST2: =="
if [ $str1 == $str2 ]
then
	echo "line13:they are same strings."
fi
echo "TEST3: -n"
if [ -n $str1 ]
then
	echo "str1 isn't NULL"
fi
echo "TEST4: -z"
if [ -z $str3 ]
then
	echo "str3 is NULL"
fi
echo "TEST5: "
if [ $str2 ]
then
	echo "str2 isn't NULL"
fi
exit 0

测试结果:

gyz@debian:~/shelltest$ ./str.sh 
TEST1: =
str1 not been changed
test
TEST2: ==
TEST3: -n
str1 isn't NULL
TEST4: -z
str3 is NULL
TEST5: 
str2 isn't NULL

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值