shell脚本if/else使用示例

if判断字符串是否为空实例

shell 复制代码
#!/bin/bash

read -p "input string > " str 

if [ -z "$str" ]
then
    echo "str是空"
else
    echo "str非空"                                                                         
fi

if判断整数是否为奇数实例

shell 复制代码
#!/bin/bash

read -p "input integer > " num 

if [ $((num % 2)) -eq 1 ]
then
    echo "num是奇数"
else
    echo "num是偶数"                                                                         
fi

if判断整数是否为偶数实例

shell 复制代码
#!/bin/bash


read -p "input integer > " num 

if [ $((num % 2)) -eq 0 ]
then
    echo "num是偶数"
else
    echo "num是奇数"                                                                         
fi

if判断整数是否为正数实例

shell 复制代码
#!/bin/bash

read -p "input integer > " num 

if [ $num -gt 0 ]
then
    echo "num是正数"
else
    echo "num不是正数"                                                                         
fi

if判断整数是否为负数实例

shell 复制代码
#!/bin/bash

read -p "input integer > " num 

if [ $num -lt 0 ]
then
    echo "num是负数"
else
    echo "num不是负数"                                                                         
fi

输入两个字符串,输出字符串的大小关系

shell 复制代码
#!/bin/bash
read -p "input str1 > " str1
read -p "input str2 > " str2

if [ -n "$str1" -a -n "$str2" ]
then
    if [ "$str1" \> "$str2" ]
    then
        echo "str1 > str2"
    elif [ "$str1" \< "$str2" ]              
    then
        echo "str1 < str2"
    else
        echo "str1 = str2"
    fi  
else
    echo "请不要输出空字符串"
fi

输入学生的成绩判断是否合法

shell 复制代码
#!/bin/bash
read -p "input score > " score

if [ $score -ge 0 -a $score -le 100 ]
then
    echo "score合法"
else
    echo "score非法"
fi

输入学生的成绩判断是否及格

shell 复制代码
#!/bin/bash
read -p "input score > " score

if [ $score -ge 60 ]
then
    echo "score及格"
else
    echo "score不及格"
fi

判断平年闰年

shell 复制代码
#!/bin/bash
read -p "input year > " year

if (((year%4==0&&year%100!=0) || (year%400==0)))
then
    echo "闰年"
else
    echo "平年"                                                                
fi

输入文件判断文件是否是普通文件

shell 复制代码
#!/bin/bash

read -p "input file > " file

if [ -f $file ]
then
    echo "这是普通文件"
else
    echo "文件不存在或它不是普通文件"
fi 

输入文件判断文件是否是目录

shell 复制代码
#!/bin/bash

read -p "input file > " file

if [ -d $file ]
then
    echo "这是目录"
else
    echo "文件不存在或它不是目录"
fi 

判断文件的权限

shell 复制代码
#!/bin/bash



read -p "input file > " file

if [ -r $file ]
then
    echo "文件可读"
else
    echo "文件不可读"
fi 


if [ -w $file ]
then
    echo "文件可写"
else
    echo "文件不可写"
fi 


if [ -x $file ]
then
    echo "文件可执行"
else
    echo "文件不可执行"
fi 
相关推荐
念恒1230612 分钟前
Socket编程UDP(中)
linux·网络协议·udp
深耕运维十八载云架构实务17 分钟前
系统故障玄学之内存明明显示空闲,服务器却频繁卡顿卡死?拆解被忽略的 Linux 隐性内存陷阱
linux
qetfw1 小时前
CentOS 7 搭建 Sendmail + Dovecot 邮件服务器:SMTP、POP3、IMAP 与 TLS
linux·centos
xlq223221 小时前
高并发服务器day5
java·服务器·数据库
明日清晨1 小时前
printf(“%p\n“,&((struct A *)NULL)->m_float)的原理
linux·服务器·前端
运维大师1 小时前
【K8S 运维实战】15-链路追踪Jaeger与OTel
运维·容器·kubernetes
William_cl1 小时前
WinForms EF Core 上下文频繁释放引发的异常排查与规范方案(MES 项目实录)
服务器·数据库·oracle
霁月的小屋2 小时前
Docker 工程化实践(二):理解镜像分层与容器文件系统
运维·docker·容器
其实防守也摸鱼2 小时前
前端应用的离线暂停更新策略:构建稳定可靠的渐进式部署方案
服务器·前端·数据库·学习·ai·命令行·linux系统
Android系统攻城狮2 小时前
Linux PipeWire深度解析之pw_context_add_spa_lib调用流程与实战(二十九)
linux·运维·服务器·音频进阶·pipewire音频进阶