首页 > 系统相关 >Shell 从入门到精通 (四)条件判断

Shell 从入门到精通 (四)条件判断

时间:2022-08-14 13:33:18浏览次数:56  
标签:精通 Shell 入门 equal echo centos7 sh root condition

1.基本语法

[ condition ](注意condition前后要有空格)
注意:条件非空即为true,[ atguigu ]返回true,[] 返回false。

2. 常用判断条件

(1)两个整数之间比较

= 字符串比较
-lt 小于(less than) -le 小于等于(less equal)
-eq 等于(equal) -gt 大于(greater than)
-ge 大于等于(greater equal) -ne 不等于(Not equal)

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

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

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

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

3.案例实操

(1)23是否大于等于22

[root@centos7 sh]# [ 23 -ge 22 ]
[root@centos7 sh]# echo $?
0

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

[root@centos7 sh]# [ -w helloworld.sh ]
[root@centos7 sh]# echo $?
0

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

[root@centos7 sh]# [ -e /home/atguigu/cls.txt ]
[root@centos7 sh]# echo $?
1

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

[root@centos7 sh]# [ condition ] && echo OK || echo notok
OK
[root@centos7 sh]# [ condition ] && [ ] || echo notok
notok

 

 

 

标签:精通,Shell,入门,equal,echo,centos7,sh,root,condition
From: https://www.cnblogs.com/mangoubiubiu/p/16585291.html

相关文章

  • MapReduce入门实战
    MapReduce思想MapReduce是Google提出的一个软件架构,用于大规模数据集的并行运算。概率“Map(映射)”和“Reduce(归约)”以及它们的思想都是从函数式编程语言借鉴的,还有......
  • hadoop入门之虚拟机安装
    今天按照黑马的视频和课程资料安装了三台Centos的linux虚拟机,步骤非常简单但是视频提示会有很多踩坑的点,我就比较顺利从VMware安装到激活,网络的配置以及虚拟机的安装都非常......
  • Makefile入门
    1.Makefile引入简单编译C文件时一般用的gcc:gcc-otesta.cb.c。但是当项目变得十分庞大时,逐个文件编译,效率极低。这时候必须引入Makefile作为编译管理。当项目设计诸......
  • Shell编程
    变量:类型只有数字、字符串、数组,不用分号#!/bin/shstr_name="jack"#变量赋值,等号俩边不能有空格,比如str_name="jack"、str_name="jack"echo$str_nameecho${str_n......
  • MyBatisPlus(一、快速入门)
    1、简介  MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。MyBatis-Plus可以不需要写SQL语句就能快速完......
  • 层次分明井然有条,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang包管理机制(package)EP
    Golang使用包(package)这种概念元素来统筹代码,所有代码功能上的可调用性都定义在包这个级别,如果我们需要调用依赖,那就“导包”就行了,无论是内部的还是外部的,使用import关键......
  • 列式存储的分布式数据库——HBase Shell与SQL实战操作(HBase Master高可用实现)
    目录一、前言二、命令行操作(hbaseshell)1)连接HBase2)创建表(create)3)添加数据(put)4)查询数据(scan)5)获取单行数据(get)6)禁用/启用表(disable/enable)7)清空表(truncate)8)删除表(drop)9)开启......
  • 神经网络与深度学习入门必备知识|概论
    神经网络与深度学习绪论人工智能的一个子领域神经网络:一种以(人工)神经元为基本单元的模型深度学习:一类机器学习问题,主要解决贡献度分配问题知识结构学习路线图预......
  • Git 使用入门
    学习之前,要明白一个概念:版本控制版本控制什么是版本控制版本迭代,新的版本,需要版本管理器版本控制(Revisioncontrol)是一种在开发的过程中用于管理我们对文件、目录或工......