Shell笔记:字符串基础使用

对于字符串变量的使用,需要加上 $ 进行引用,特别是在 [[ ]] 中作为条件判断时没有使用 $ 的话,无法进行正确的判断。

1 判断两个字符串是否相同

[[ ]] 使用 ===!= 判断两个字符串是否相等,如果不确定变量的数据类型,但是想要将其转换为字符串再进行比较,可以在变量外边包裹一个双引号再进行判断。

a="abc"
b="bcd"
c="abc"
# 使用=判断字符串是否相等
if [[ ${a} = ${c} ]]; then
        echo "YES-a"
fi
# 使用==判断字符串是否相等
if [[ ${a} == ${c} ]]; then
       echo "YES-c"
fi
# 使用!=判断字符串是否不等
if [[ ${a} != ${b} ]]; then
        echo "YES-b"
fi

d=333
e="333"
# 可以使用双引号将变量包裹起来,将其转换为字符串进行比较判断
if [[ "${d}" == "${e}" ]]; then
        echo "YES-d"
fi

2 判断一个字符串是否为空(或长度为0)

可以直接对引用的字符串进行判断 if [[ ${var} ]] ,为空就是false,不为空就是true,当然,也可以使用 -z-n 显式的判断字符串是否为空。

a="abc"
b=""
# 使用-z判断字符串是否为空,为空返回true
if [[ -z ${b} ]]; then
        echo "YES-b"
fi
# 使用-n判断字符串是否不为空,不为空返回true
if [[ -n ${a} ]]; then
       echo "YES-a"
fi
# 直接判断引用的字符串是否不为空,不为空返回true
if [[ ${a} ]]; then
        echo "YES-abc"
fi

3 字符串拼接

拼接字符串最简单的方式就是在外面用一个双引号包裹,里面填充变量值即可。

a="aaa"
b="bbb"
c="ccc"
echo "${a}111${b}222${c}"
posted @ 2024-01-21 11:29  山上下了雪-bky  阅读(4)  评论(0编辑  收藏  举报