bash编程之“字符串”:

简介:

bash编程之“字符串”:

双目:

>:大于

<:小于

==:等于

<>或者!=:不等

=~:左侧是字符串,右侧是一个模式,判断左侧的字符串能否被右侧的模式所匹配,通常只在[[]]中使用,

     模式中可以使用行首、行尾锚定符,但模式不要加引号。

单目:

-n $stringVar :字符串是否不空,不空为真,空为假

-z $stringVar :字符串是否空,空为真,不空为假


例如:stringA="hello"

      stringB="world"

[ "stringA"=="stringB" ]

       echo $?,结果为1,假



      stringB="hello"

[ "stringA"=="stringB" ]

       echo $?,结果为0,真



[ -z "$stringA" ]

echo $?,结果为1,假

unset stringA

[ -z "$stringA" ]

 echo $?,结果为0,真


[[ "$stringA"=~ lo ]]

echo $?,结果为0,真


[[ "$stringA"=~ ol ]]

echo $?,结果为1,假


例如:判断系统所有用户是否是拥有可登录shell

#!/bin/bash

for userName in `cut -d: -f1 /etc/passwd`; do

if [[ `grep "^$userName\>" /etc/passwd|cut -d :-f7` =~ sh$]];then

 echo "login user:$userName"

else

 echo "nologin user:$userName"

fi

done












本文转自lzf0530377451CTO博客,原文链接: http://blog.51cto.com/8757576/1555451,如需转载请自行联系原作者


相关文章
|
3月前
|
Shell 数据处理
Bash 中检查文件是否包含字符串
【8月更文挑战第27天】
40 5
|
6月前
|
机器学习/深度学习 Unix Shell
Shell编程基础入门(Bash|变量与输入输出重定向2&1)
Shell编程基础入门(Bash|变量与输入输出重定向2&1)
122 0
|
缓存 Shell 开发工具
【Shell编程】Shell中Bash基本功能
【Shell编程】Shell中Bash基本功能
99 0
【Shell编程】Shell中Bash基本功能
|
Shell
【Shell编程】Shell中Bash变量-数值运算、运算符变量、测试和内容替换
【Shell编程】Shell中Bash变量-数值运算、运算符变量、测试和内容替换
87 0
|
Shell
【Shell编程】Shell中Bash变量-预定义变量
【Shell编程】Shell中Bash变量-预定义变量
107 0
|
Shell
【Shell编程】Shell中Bash变量-环境变量
【Shell编程】Shell中Bash变量-环境变量
79 0
|
机器学习/深度学习 Shell
【Shell编程】Shell中Bash变量-位置参数变量
【Shell编程】Shell中Bash变量-位置参数变量
89 0
|
Shell
【Shell编程】Shell中Bash变量-用户自定义变量
【Shell编程】Shell中Bash变量-用户自定义变量
75 0
|
运维 Shell
善用chatGPT学习 | bash脚本如何判断字符串在数组中
善用chatGPT学习 | bash脚本如何判断字符串在数组中
199 0
|
存储 Shell 调度
学习系统编程No.8【bash实现】
学习系统编程No.8【bash实现】