linux学习笔记

关于shell语言中的if else语句中 if的判断标准到底是什么,在if后面的命令,如果是退出状态码是0,则执行位于then后面的语句,否则执行else后面的语句。

例:

 
 
  1. #!/bin/bash
  2. #test the if statement
  3. if pwd
  4. then
  5. echo means command wpd output statement code 0
  6. else
  7. echo pwd command dosent work
  8. fi

而什么是状态码?==》在linux中每个 command运行并退出时都会产生一个退出状态码给shell,它的范围是0-255之间的数。一个command成功运行,那么它退出时产生的退出状态码则为0,否则产生的退出状态码是一个非0的正数,具体如图1所示。

而在实际的shell编程中,关键字if 后面一般并不直接接command,而是if [ condition ]。注意加上了方括号[ ]和没有加方括号是有区别的。
加上了方括号表示 if test condition,命令test会测试后面跟的条件condition,如果条件成立则返回退出状态码0,否则返回退出状态码非0的正数。具体如图2所示.

在图中,用test命令测试pwdd与pwddfg(这2个变量都没有赋值),但是查看退出状态码,发现状体码为0,
在图中,用test命令测试 test -f gdga ;test -d gdga,查看退出状态码都为1(一般性未知错误)。其原因是因为 test -f file;test -d file,它会把后面的参数当做是文件,并检查是否是文件(-f)以及检查是否是文件目录(-d)。而gdga根本没有赋值。所以返回非0状态码了。
方括号定义了测试条件,即用[ ]来代替命令test。而在书写的时候第一个方括号之后和第二个方括号之前需要加上空格

 
 
  1. if [ condition ]
  2. then
  3. operation
  4. fi

在方括号(test命令)可以判断3中条件:
1.数值比较
2.字符比较
3.文件比较
在比较之后,得到的结果是boolean值(true 和false),方括号(test命令)会将boolean值结果转化为退出状态码,如果boolean值为 true 方括号(test命令)会为if-else产生退出状态码0,如果boolean值为 false 方括号(test命令)会为if-else产生非0退出状态码。
而在condition判断的时候,主要是根据参数来判断目标是文件还是字符串。具体如图3和图4所示。

图3

图4

在图3代码中,如果方括号中的参数接的是-d 则把变量test当成文件进行处理,如果接的 = 则认为变量test是字符串,就进行字符串比较。





期末大作业基于python的足球运动员数据分析源码+数据集(高分项目),个人经导师指导并认可通过的高分设计项目,评审分98分,项目中的源码都是经过本地编译过可运行的,都经过严格调试,确保可以运行!主要针对计算机相关专业的正在做大作业、毕业设计的学生和需要项目实战练习的学习者,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于python的足球运动员数据分析源码+数据集(高分项目)期末大作业基于pyth
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值