if判断中常使用的shell选项
选项 含义
-eq //等于 equal
-ne //不等于 not equal
-gt //大于 greater than
-lt //小于 less than
-ge //大于等于 greater equal
-le //小于等于 less equal
-z 判断变量是否存在值 //-z 在if里的意思是 空 zero
-d 判断该选项后的参数是否为目录 directory
-f 判断该选项后指定的参数是否为文件 file
-L 判断指定的是否为符号链接 link
-r 判断指定的是否可读 read
-s 判断存在的对象长度是否为0 size
-w 判断指定的是否可写 write
-x 判断存在的对象是否可以执行 execute
-! 测试条件的否定符号
if [ -n "$str1" ] 当串的长度大于0时为真(串非空) ,使用-n判断变量一定要带上双引号""
if [ -z "$str1" ] 当串的长度为0时为真(空串)
if [ "$str1" ] 当串str1为非空时为真
文件表达式
if [ -f file ] 如果文件存在
if [ -d ... ] 如果目录存在
if [ -s file ] 如果文件存在且非空
if [ -r file ] 如果文件存在且可读
if [ -w file ] 如果文件存在且可写
if [ -x file ] 如果文件存在且可执行
整数变量表达式
if [ int1 -eq int2 ] 如果int1等于int2
if [ int1 -ne int2 ] 如果不等于
if [ int1 -ge int2 ] 如果>=
if [ int1 -gt int2 ] 如果>
if [ int1 -le int2 ] 如果<=
if [ int1 -lt int2 ] 如果<
字符串变量表达式
If [ $a = $b ] 如果string1等于string2,字符串允许使用赋值号做等号
if [ $string1 != $string2 ] 如果string1不等于string2
if [ -n "$str" ] 如果str 非空(非0),返回0(true)
if [ -z $str ] 如果str 为空
if [ $str ] 如果str 非空,返回0 (和-n类似)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库