shell脚本-逻辑判断

Shell基础编程--Shell脚本中的逻辑判断 1、测试表达式 (1)通常在条件结构和流程控制结构中,都需要进行各种测试,根据测试结果执行不同的操作,有时也会和if等条件语句相结合来完成测试判断,以减少程序运行的错误。 (2)执行测试表达式后通常会返回“真”或者是“假”,执行命令后返回值为“0”则表示为真,返回“1” 则表示为假。 (3)测试表达式的两种判断 格式:test和[ ] 常用测试操作符 说明 -d 文件存在,且为目录,则为真 -f . 阅读详情
test可以替换为[ expr ],例如: [ $name = stephen ]
[[  expr ]] 则可以表示正则表达式,例如: [[ $name == [Ss]tephen && $friend == "Jose" ]]
(( expr )) 表达方式和c语言保持一致, 例如: (( x == 2 && y == 3 ))
成功则返回0,失败返回1
判断操作符判断为真的条件
字符串判断 
[ stringA=stringB ]stringA等于stringB
[ stringA==stringB ]stringA等于stringB
[ stringA!=stringB ]stringA不等于stringB
[ string ]string不为空
[ -z string ]string长度为0
[ -n string ]string长度不为0
逻辑判断 
[ stringA -a stringB ]stringA和stringB都是真
[ stringA -o stringB ]stringA或stringB是真
[ !string ]string不为真
逻辑判断(复合判断) 
[[ pattern1 && pattern2 ]]pattern1和pattern2都是真
[[ pattern1 || pattern2 ]pattern1或pattern2是真
[[ !pattern ]]pattern不为真
整数判断 
[ intA -eq intB ]intA等于intB
[ intA -ne intB ]intA不等于intB
[ intA -gt intB ]intA大于intB
[ intA -ge intB ]intA大于等于intB
[ intA -lt intB ]intA小于intB
[ intA -le intB ]intA小于等于intB
文件判断中的二进制操作 
[ fileA -nt fileB ]fileA比fileB新
[ fileA -ot fileB ]fileA比fileB旧
[ fileA -ef fileB ]fileA和fileB有相同的设备或者inode值
文件检验 
[ -d $file ] or [[ -d $file ]]file为目录且存在时为真
[ -e $file ] or [[ -e $file ]]file为文件且存在时为真
[ -f $file ] or [[ -f $file ]]file为非目录普通文件存在时为真
[ -s $file ] or [[ -s $file ]]file文件存在, 且长度不为0时为真
[ -L $file ] or [[ -L $file ]]file为链接符且存在时为真
[ -r $file ] or [[ -r $file ]]file文件存在且可读时为真
[ -w $file ] or [[ -w $file ]]file文件存在且可写时为真
[ -x $file ] or [[ -x $file ]]file文件存在且可执行时为真



























































转载:http://www.cnblogs.com/mchina/archive/2012/07/04/2575079.html









手把手教你从入门到精通C#串口通信 本文以我开发的串口助手SComTool为例,详细介绍《C#串口通信从入门到精通》专栏的目录内容,本专栏由一个高级工程师多年实战经验总结,绝对是c#串口通信的葵花宝典!带您从入门到精通C#串口通信! 阅读详情

相关推荐

ANSYS材料库实战:手把手教你用APDL命令流定义混凝土和形状记忆合金

本文详细介绍了在ANSYS中使用APDL命令流定义混凝土和形状记忆合金(SMA)的高级建模技巧。通过SOLID65单元和SMA本构模型,工程师可以精确模拟非线性材料行为,包括混凝土的开裂和SMA的超弹性效应。文章提供了完整的命令流示例和求解策略优化建议,帮助用户提升工程仿真效率。

hh234的博客 486

shell 常用逻辑判断

整数比较 -eq 等于 -ne 不等于 -gt 大于 -ge 大于等于 -lt 小于 -le 小于等于 字符串比较 == 等于,如:if [ “a"=="a" == "a"=="b” ],与=等价 != 不等于,如:if [ “a"!="a" != "a"!="b” ] 文件测试 -z string 测试指定字符是否为空,空着真,非空为假 -n string 测试指定字符串是否为不空,空为假 非空为真 -e FI

qq_38834633的博客 601

Latex参考文献中大写字母编译后自动变成了小写,如何保持原字母大写形式

bib文件参考文献中大写自动变为小写,如何保持原大写问题。Latex: 保持参考文献大小写,overleaf文献编译后,原大写字母自动变成了小写字母,如何保持原字母大写

我的个人博客 5806

使用Shell(bash) 来检查 git 本地某个分支是否存在

前言 工作中经常使用Git更新代码版本,有这样一个场景: 如果分支已经存在,则将其打开并更新代码 如果分支不存在,请创建它并打开它,然后更新代码 如果使用it checkout -b 命令,如git checkout -b foo在foo分支上打开(如果不存在,它将创建此分支),但是如果foo分支已经存在,则会引发如下错误: fatal: A branch named 'foo' already exists. git checkout -B foo 从-B手册页: 如果..

专注自动化、性能测试、测试架构学习交流 8595

WPF+Prism+LiveCharts+materialdesignin 搭建WPF开发框架

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容。

T_Tboy的博客 3052

保姆级教程:用ROS2 Humble + Gazebo Classic 从零搭建一个能键盘控制的差分AGV模型

本文提供了一份详细的ROS2 Humble与Gazebo Classic教程,指导用户从零开始搭建一个键盘控制的差分AGV模型。内容涵盖环境配置、Xacro文件设计、Gazebo仿真集成以及键盘控制实现,特别针对常见问题提供解决方案,帮助开发者快速掌握ROS2机器人仿真技术。

weixin_30387423的博客 169

linux-shell中的逻辑判断

1.脚本中的传参 非交互模式下:从shell中向脚本内部传参。 $0 :脚本本身名称 $1 :脚本后输入的第一串字符 $2 :脚本后输入的第二串字符 $3 :脚本后输入的第三串字符 $* :脚本后输入的所有字符 (eg: “apple banana orange”) $# :脚本后输入的字符串个数 $@ :脚本后输入的所有字符 (eg: “apple” “banana” “orange”) 交互式传参: read -p “。。。。。” 变量 -p 后跟字符,字符后跟变量名。 read -

qq_43063355的博客 453

PCIE的MSI中断处理机制与优化策略

PCIe设备的。

xiaoheshang_123的博客 519

shell脚本中的逻辑判断

if语法 格式1:if 条件 ; then 语句; fi 格式2:if 条件; then 语句; else 语句; fi 格式3:if …; then … ;elif …; then …; else …; fi 逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(<); -ge(>=)...

oy5348的博客 985

手把手教程 | 使用 apktool 修改已发布 APK 的版本号与版本名称

摘要:本文介绍如何使用apktool工具直接修改APK版本信息,适用于版本回滚、多版本测试等场景。详细步骤包括反编译APK、修改版本号、重打包、对齐优化和重新签名,并分享了反编译相关实用知识。该方法无需源代码参与,但需注意修改后的APK必须重新签名才能安装。最后强调应在合法范围内使用反编译技术。

学无止境 829

OpenCASCADE完整教程专栏完整目录

OpenCASCADE完整教程专栏完整目录

希望我的博客,能帮上你解决学习中工作中所遇到的问题 9705

Shell脚本学习之逻辑判断

Shell脚本的if语句、循环语句中都会有一个逻辑判断式。逻辑判断式用于各种条件的判断,除非程序是流水账,否则是一定会用到逻辑判断的,可见其重要性。 Shell的逻辑判断,我目前所知共有两种: 1、test命令,可以结合命令执行结果变量($?)或者&&以及||来实现不同条件走不同分支 2、[ 条件判断 ],这种方式常用于if语句和while语句中 参数

艺海拾贝 3549

由异常的测试眼图引发的深入思考

信号测试中出现“双眼皮”的眼图测试效果,可能的导致因素总结如下:PCB通道阻抗设计不匹配,负载端出现严重反射;发射端采用了不当的信号预处理;接收器均衡处理不当;通道串扰严重... 基于以上的假设,本文就逐一分析下这些因素到底是如何对正常的信号眼图造成影响的。

一只豌豆象的博客 3064

20、4 Shell脚本中的逻辑判断

在shell脚本当中很多地方都会用到逻辑判断,判断某一个数值,判断某个目录或文件,然后针对判断的结果再做一个操作,若没有判断,是无法进行一些操作的. 例如cp一些文件,或者MV,或是删除某个文件,没有判断,写这些命令就没什么意义,也就不叫作shell脚本,可见shell脚本非常重要. sh...

chunyouban0052的博客 413

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

shell 脚本逻辑判断

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34257076的博客 266

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

linux 逻辑判断语句,shell脚本的逻辑判断

1.shell脚本的逻辑判断在shell脚本中,-gt (>); -lt(=); -le(<=);-eq(==); -ne(!=),&&(与),||(或)。或者用(($a>1))这种方式来表示;[root@yuioplvlinux-128 ~]# a=5[root@yuioplvlinux-128 ~]# if [ $a -gt 3 ];then echo "OK...

weixin_39940957的博客 798

shell是什么,date命令,shell脚本中的变量,shell中的逻辑判断

shell是什么 shell是一种脚本语言 可以使用逻辑判断、循环等语法 可以自定义函数 shell是系统命令的集合 shell脚本可以实现自动化运维,能大大增加我们的运维效率 shell脚本结构和执行 开头需要加#!/bin/bash 以#开头的行作为解释说明 脚本的名字以.sh结尾,用于区分这是一个shell脚本 执行方法有两种 chmod +x 1.sh; ....

qq_43798084的博客 229

linux复杂逻辑判断,20.5 shell脚本中的逻辑判断

shell脚本中的逻辑判断格式1:if 条件 ; then 语句; fi格式2:if 条件; then 语句; else 语句; fi格式3:if …; then … ;elif …; then …; else …; fi逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(=); -le(<...

weixin_29749887的博客 319

shell脚本之逻辑判断

#!/bin/bash a=10 b=20 if [[ $a -lt 100 && $b -gt 100 ]] then echo "right" else echo "wrong" fi if [[ $a -lt 100 || $b -gt 100 ]] then echo "right" else echo "wrong" fi 输出 wrong right 注意if后面空格一定不能少 if [ $a -l.

reg183的专栏 168

shell脚本宝藏仓库(基础命令、正则表达式、shell基础、变量、逻辑判断、函数、数组)

函数function是由若干条shell命令组成的语句块,实现代码重用和模块化编程,它与shell程序形式上是相似的,不同的是它不是一个单独的进程,不能独立运行,而是shell程序的一部分。awk常用的变量有OFS、NF和NR,OFS和-F选项有类似的功能,也是用来定义分隔符的,但是他是在输出的时候定义,NF表示用分隔符分隔后一共有多少段,NR表示行号。#在上面的例子中,出现一个新的知识点,就是多个被暂停的任务会有编号,使用jobs命令可以看到两个任务,使用bg命令或者fg命令时,需要在后面加上编号。

2301_82330629的博客 2945

linux 三目运算符,Shell脚本:shell逻辑判断-三目运算符

?:;等同于C语言中的if语句if (表达式1)表达式2;else表达式3;而在bash shell 中也有类似的方式echo $((2>1?2:1))但是這里 $(()) 只能进行数值大小的判断使用command进行三目运算应该这样使用command1 && command2 || command3在shell中,很多人理解为下面的if语句if command1;thenc...

weixin_39852491的博客 2098

Shell脚本中的逻辑判断、文件目录属性判断、if特殊用法 、 case判断

Shell脚本中的逻辑判断在shell脚本当中很多地方都会用到逻辑判断,判断某一个数值,判断某个目录或文件,然后针对判断的结果再做一个操作,若没有判断,是无法进行一些操作的. 例如cp一些文件,或者MV,或是删除某个文件,没有判断,写这些命令就没什么意义,也就不叫作shell脚本,可见shell脚本非常重要.shell当中常见的逻辑判断语法格式1:if条件;then 语句;if格式2:if条件;t...

weixin_39663255的博客 624

linux shell 逻辑判断,shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case判断...

shell脚本中的逻辑判断格式1:if 条件 ; then 语句; fi格式2:if 条件; then 语句; else 语句; fi格式3:if …; then … ;elif …; then …; else …; fi逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(=); -le(<...

weixin_29023079的博客 571

shell脚本中逻辑判断|| 和-o的使用及区别

(1) shell脚本中逻辑判断|| 和-o的使用及区别 -a 与 -o 或 ! 非echo "init_mv begin..." if [ "$SrcPath" == '/' ...

1万+

20.5 shell脚本中的逻辑判断

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34127717的博客 82
下一篇: python 异常处理
alex-chao
博客等级 码龄10年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值