shell5

字符串运算符

首先我们在终端利用vim打开u.sh
复制代码
str1="hello"
str2="hello"
if [ "$str1" = "$str2" ]; then
	echo True
else
	echo false
fi
我们把hello改为Hello,看一下大小写是否敏感
复制代码
str1="Hello"
str2="hello"
if [ "$str1" = "$str2" ]; then
	echo True
else
	echo false
fi
我们改为!=呢
复制代码
str1="Hello"
str2="hello"
if [ "$str1" != "$str2" ]; then
	echo True
else
	echo false
fi
改为-z

-z检查字符串长度是否为0,返回true就是为0,返回false就是不为0

复制代码
str1="Hello"
str2="hello"
if [ -z "$str1" ]; then
	echo True
else
	echo false
fi
改为- n

与-z相反

复制代码
str1="Hello"
str2="hello"
if [ -n "$str1" ]; then
	echo True
else
	echo false
fi

当没有参数时,且变量不存在,不存在的变量值肯定为空,为空返回false不为空返回true

复制代码
str1="Hello"
str2="hello"
if [ "$str11" ]; then
	echo True
else
	echo false
fi
逻辑运算符之bool运算符
复制代码
num1=9
if [ "&num1" != "9" ]; then
	echo num1不等于9
else
	echo num1等于9
fi
余运算
复制代码
num1=9
num2=19
if [ "$num1" != "9" -a "$num2" -lt "20" ]then
	echo true
else
	echo false
fi

" n u m 1 " ! = " 9 " 检查 n u m 1 是否不等于字符串 " 9 " 。 − a 是逻辑运算符"与"( A N D )在旧式 P O S I X s h e l l 中的用法 , ' − o ' 是逻辑运算符"或"( O R )的符号。 " num1" != "9" 检查num1是否不等于字符串 "9"。 -a 是逻辑运算符"与"(AND)在旧式 POSIX shell 中的用法,`-o` 是逻辑运算符"或"(OR)的符号。 " num1"!="9"检查num1是否不等于字符串"9"。−a是逻辑运算符"与"(AND)在旧式POSIXshell中的用法,'−o'是逻辑运算符"或"(OR)的符号。"num2" -lt "20" 检查num2是否小于数值 20。

相关推荐
老码观察10 分钟前
数环通iPaaS架构设计的结构化与模块化方法论——从高内聚低耦合到工程落地的完整指南
java·服务器·网络
mounter62510 分钟前
破局与守正:eBPF 在 Linux 内存管理中的应用、演进与重构构想
linux·服务器·网络·mmu·ebpf·linux kernel
STDD20 分钟前
Linux Namespace:容器隔离的底层原理,PID、网络、挂载隔离实战
linux·运维·网络
轻帆向远29 分钟前
Debian 旧版源配置指南:国内镜像加速与 archive.debian.org 替代方案
网络·debian·apt
allnlei33 分钟前
分层 B 帧(Hierarchical B-frames)详解
网络
Yang961138 分钟前
宽频高精度!鼎讯信通 OM-T 台式频谱分析仪风电实验室专用
大数据·运维·网络
IP老炮不瞎唠1 小时前
批量任务vs持续监控:不同市场调研场景下的配置策略
大数据·网络·网络协议
TheSumSt1 小时前
日常教程丨远程串流打游戏方法介绍(Parsec/Tailscale+Headscale+DERP+Sunshine&Moonlight)
linux·网络·经验分享·nginx·开源·玩游戏
ICT系统集成阿祥1 小时前
防火墙威胁告警溯源源 IP 完整方法(华为 USG / 华三 SecPath 通用)
网络·tcp/ip·华为
KaMeidebaby1 小时前
卡梅德生物技术快报|组蛋白乙酰化修饰调控动脉粥样硬化的分子机制及中药表观干预研究
网络·人工智能·网络协议·tcp/ip·算法