首页 > 系统相关 >Shell | 条件判断

Shell | 条件判断

时间:2023-07-13 12:34:03浏览次数:37  
标签:文件 Shell equal echo 判断 notOK 条件 权限

基本语法:

(1)test condition

(2)[ condition ](注意 condition 前后要有空格

注意:条件非空即为 true,[ atguigu ]返回 true,[ ] 返回 false。

常用判断条件:

(1)两个整数之间比较

-eq 等于(equal) -ne 不等于(not equal)
-lt 小于(less than) -le 小于等于(less equal)
-gt 大于(greater than) -ge 大于等于(greater equal)

注:如果是字符串之间的比较 ,用等号“=”判断相等;用“!=”判断不等。

(2)按照文件权限进行判断

-r 有读的权限(read)
-w 有写的权限(write)
-x 有执行的权限(execute)

(3)按照文件类型进行判断

-e 文件存在(existence)
-f 文件存在并且是一个常规的文件(file)
-d 文件存在并且是一个目录(directory)

例如:

(1)23 是否大于等于 22

$ [ 23 -ge 22 ]
$ echo $?
0

(2)helloworld.sh 是否具有写权限

$ [ -w helloworld.sh ]
$ echo $?
0

(3)/home/zlq/cls.txt 目录中的文件是否存在

$ [ -e /home/zlq/cls.txt ]
$ echo $?
1

(4)多条件判断(&& 表示前一条命令执行成功时,才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条命令)

$ [ atguigu ] && echo OK || echo notOK
OK
$ [ ] && echo OK || echo notOK
notOK

标签:文件,Shell,equal,echo,判断,notOK,条件,权限
From: https://www.cnblogs.com/zhangxuegold/p/17550145.html

相关文章

  • 如何实现参考教材4.5.2,在Spark Shell中编写代码实现: 1、用SparkSQL 向Hive的表写入
    使用SparkSQL向Hive表写入数据的流程为了向Hive表写入数据,我们需要完成以下步骤:步骤描述1创建SparkSession2创建DataFrame3将DataFrame注册为表4写入数据到Hive表接下来,我们将逐步指导你完成这些步骤。步骤1:创建SparkSession首先,我们需要创建一个Spa......
  • Shell | 正则表达式
    正则表达式使用单个字符串来描述、匹配一系列符合某个语法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。在Linux中,grep,sed,awk等文本处理工具都支持通过正则表达式进行模式匹配。常规匹配一串不包含特殊字符的正则表达式匹配它自......
  • 【计算机教育缺失的一课】01 课程概览与shell
    一、单个程序(1)shell当可视化界面无法实现你想要的功能时,shell是你和计算机交互的主要方式之一。大多数平台也都提供一些形式的shell。在windows上一般是powershell,但也有其他shell可用。有不同类型的shell最常见的是Bash(BourneAgainSHell)(2)terminal......
  • Shell | 函数语法
    系统函数1、basename基本语法:basename[string/pathname][suffix](功能描述:basename命令会删掉所有的前缀包括最后一个(‘/’)字符,然后将字符串显示出来。basename可以理解为取路径里的文件名称选项:suffix为后缀,如果suffix被指定了,basename会将pathname或string......
  • Shell | 循环语句
    for循环基本语法1:for((初始值;循环控制条件;变量变化))do 程序done例子:从1加到100$touchfor1.sh$vimfor1.sh#!/bin/bashsum=0for((i=0;i<=100;i++))dosum=$[$sum+$i]doneecho$sum$chmod777for1.sh$./for1.sh5050基本语法2:for变量in值......
  • Shell | 判断语句
    if判断基本语法:(1)单分支if[条件判断式];then 程序fi或者if[条件判断式]then 程序fi(2)多分支if[条件判断式]then 程序elif[条件判断式]then 程序else 程序fi注意事项:​ ①[条件判断式],中括号和条件判断式之间必须有空格​ ②if后要有空格......
  • 1.8 运用C编写ShellCode代码
    在笔者前几篇文章中,我们使用汇编语言并通过自定位的方法实现了一个简单的MessageBox弹窗功能,但由于汇编语言过于繁琐在编写效率上不仅要考验开发者的底层功底,还需要写出更多的指令集,这对于普通人来说是非常困难的,当然除了通过汇编来实现ShellCode的编写以外,使用C同样可以实现编写,......
  • ansible shell模块简单使用
    ansibleshell模块简单使用参数参数说明chdir运行命令前先CD到该目录cmd运行的命令creates存在某个文件就不运行命令executable更改执行命令的shell路径,需要是绝对路径free_formTheshellmoduletakesafreeformcommandtorun,asastring.The......
  • 【Python】对密码文本进行加密, 并判断 hashlib
    importhashlibdefencrypt_password(password,salt):#创建一个sha256的哈希对象sha256_hash=hashlib.sha256()#将盐值和密码组合起来并进行哈希hashed_password=salt.encode('utf-8')+password.encode('utf-8')sha256_hash.update(hashed_......
  • C#如何判断为空
    1.使用null合并运算符(??)该运算符用于判断左侧的操作符是否为null,如果为null,则返回右侧的操作数,否则返回左侧的操作数。stringstr=null;stringresult=str??"default";2.使用null条件运算符(?.)该运算符用于判断是否为null,如果不是,则执行后面的成员访问操作;如......