当前位置: 首页 > news >正文

Shell编程学习-If条件语句

示例1:使用传参的方式实现两个整数的比较:

#!/bin/bash
#
read -p "Please input second number: " num1 num2if [ $num1 -lt $num2 ]thenecho "$num1 is less than $num2."exit
fiif [ $num1 -eq $num2 ]thenecho "$num1 is equal to $num2."exit
fiif [ $num1 -gt $num2 ]thenecho "$num1 is greater than $num2."exit
fi

示例2:使用read输入的方式实现两个整数的比较:

[root@vm1 scripts]# cat if3.sh
#!/bin/bash
#
#read -p "Please input second number: " num1 num2
num1=$1
num2=$2if [ $num1 -lt $num2 ]thenecho "$num1 is less than $num2."exit
fiif [ $num1 -eq $num2 ]thenecho "$num1 is equal to $num2."exit
fiif [ $num1 -gt $num2 ]thenecho "$num1 is greater than $num2."exit
fi

说明:

1)read读入和命令行传参是两种输入内容的方法,不要混用。

2)缺点是复杂、逻辑还不够清晰,那么有没有更好的方法呢?当然有的,见后面的分支if的实现。

示例3: 开发shell脚本,实现如果/server/scripts下面存在if3.sh就输出到屏幕。注意:如果执行脚本后发现脚本if3.sh不存在,就自动创建这个if3.sh的脚本。

[root@vm1 scripts]# cat if6.sh
#!/bin/sh
#
path=/server/scripts
file=if7.shif [ ! -d "$path" ]thenmkdir -p $pathecho "$path dir is not exist. already create it."
fiif [ ! -f "$path/$file" ]thentouch $path/$fileecho "$path/$file is not exist. already create it."exit
fils -l $path/$file

运行脚本进行测试: 

[root@vm1 scripts]# sh if6.sh
/server/scripts/if7.sh is not exist. already create it.
[root@vm1 scripts]# sh if6.sh
-rw-r--r-- 1 root root 0 Jul 31 23:44 /server/scripts/if7.sh
[root@vm1 scripts]#

示例4:开发脚本判断系统剩余内存大小,如果低于100M就邮件告警。测试告警成功后系统定时任务每3分钟执行一次检查。

相关文章:

Shell编程学习-If条件语句

示例1:使用传参的方式实现两个整数的比较: #!/bin/bash # read -p "Please input second number: " num1 num2if [ $num1 -lt $num2 ]thenecho "$num1 is less than $num2."exit fiif [ $num1 -eq $num2 ]thenecho "$num1 is …...

Android getDrawable()和getColor()

Android getDrawable() 1.过时代码 虽然过时,但是不妨碍使用 context.getResources().getDrawable(R.drawable.xxx) 2.建议代码 context.getDrawable(R.drawable.xxx) 有API限制 3.最新代码 ContextCompat.getDrawable(getContext(), R.drawable.xxx); 有A…...

Android Calendar

1.字符串日期比较大小 public static boolean compareDate(String pre, String last) {SimpleDateFormat sdf new SimpleDateFormat("yyyy-MM-dd");try {Date lastDate sdf.parse(last);Calendar lastCal Calendar.getInstance();lastCal.setTime(lastDate);Date …...

C# PaddleDetection 目标检测 ( yolov3_darknet)

效果 项目 VS2022.net4.8OpenCvSharp4Sdcb.PaddleDetection 代码 using OpenCvSharp; using OpenCvSharp.Extensions; using Sdcb.PaddleDetection; using Sdcb.PaddleInference; using System; using System.Drawing; using System.Windows.Forms; using YamlDotNet;namespa…...

matlab多线程,parfor循环进度,matlab互斥锁

一. 内容简介 matlab多线程,parfor循环进度,matlab互斥锁 二. 软件环境 2.1 matlab 2022b 2.2代码链接 https://gitee.com/JJW_1601897441/csdn 三.主要流程 3.1 matlab多线程 有好几种,最简单的,最好理解的就是parfor&am…...

建木使用进阶-创建密钥管理

阿丹: 第一次我们进入建木,第一件事情就是配置我们相关的密钥。 解读: 在建木中我们可以进行创建密钥来对我们服务器等密码进行方便的管理。 注意: 登录的时候账号为:admin 密码为:123456 这是初始…...

多模态第2篇:MMGCN代码配置

一、Windows环境 1.创建并激活虚拟环境 #创建虚拟环境命名为mmgcn,指定python版本为3.8 conda create -n mmgcn python3.8 #激活虚拟环境 conda activate mmgcn2.安装pytorch #torch2.0.0 cu118 pip install torch2.0.0cu118 torchvision0.15.1cu118 torchaudio…...

DHCP部署与安全详解

文章目录 一、DHCP是什么?二、DHCP相关概念三、DHCP优点四、DHCP原理1. 客户机发送DHCP Discovery广播包(发现谁是DHCP服务器)2. 服务器响应DHCP Offer广播包3. 客户机发送DHCP Request广播包4. 服务器发送DHCP ACK广播包 五、DHCP续约六、部…...

华为数通HCIP-PIM原理与配置

组播网络概念 组播网络由组播源,组播组成员与组播路由器组成。 组播源的主要作用是发送组播数据。 组播组成员的主要作用是接收组播数据,因此需要通过IGMP让组播网络感知组成员位置与加组信息。 组播路由器的主要作用是将数据从组播源发送到组播组成员。…...

linux 权限

一个文件的权限 我们知道一个文件分为两个部分:1. 文件的内容。 2. 文件的属性 我们对一个文件的操作也就存在以下的一些属性: 这个文件可以被你看到--------- 可读–read—r这个文件可以被你修改----------可写–write–w这个文件可以被编译器编译并执…...

SQL基础使用

SQL的概述 SQL全称: Structured Query Language,结构化查询语言,用于访问和处理数据库的标准的计算机语言。 SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。 经过多年发…...

金蝶云星空任意文件读取漏洞复现(0day)

0x01 产品简介 金蝶云星空是一款云端企业资源管理(ERP)软件,为企业提供财务管理、供应链管理以及业务流程管理等一体化解决方案。金蝶云星空聚焦多组织,多利润中心的大中型企业,以 “开放、标准、社交”三大特性为数字…...

linux中readelf命令详解

readelf 用于显示elf格式文件的信息 补充说明 readelf命令 用来显示一个或者多个elf格式的目标文件的信息,可以通过它的选项来控制显示哪些信息。这里的elf-file(s)就表示那些被检查的文件。可以支持32位,64位的elf格式文件,也支持包含elf…...

Python 教程之标准库概览

概要 Python 标准库非常庞大,所提供的组件涉及范围十分广泛,使用标准库我们可以让您轻松地完成各种任务。 以下是一些 Python3 标准库中的模块: 「os 模块」 os 模块提供了许多与操作系统交互的函数,例如创建、移动和删除文件和…...

MySQL~数据库的基本概念

一、数据库的基本概念 1、数据库的英文单词: DataBase 【 DB】 2、什么数据库? 用于存储和管理数据的仓库。 3、数据库的特点: 持久化存储数据的 数据库就是一个文件系统 方便存储和管理数据 使用统一的方式操作数据库 -- SQL 4、常…...

uniapp文件下载

使用uniapp提供给我们的uni.downloadFile、uni.saveFile和uni.openDocument三个API就可以了 也很简单&#xff0c;直接贴一下代码&#xff0c;安修修改一下即可 <template><view><image tap"pdfDownLoad" style"width: 35rpx;height: 35rpx;&…...

让GPT人工智能变身常用工具-下

...

el-table 表格头部合并

<el-table v-loading"listLoading" :key"tableKey" :data"list" stripe border fit highlight-current-rowstyle"width: 100%;" size"mini"><el-table-column label"第一行" align"center">…...

【机器学习】Linear Regression

Model Representation 1、问题描述2、表示说明3、数据绘图4、模型函数5、预测总结附录 1、问题描述 一套 1000 平方英尺 (sqft) 的房屋售价为300,000美元&#xff0c;一套 2000 平方英尺的房屋售价为500,000美元。这两点将构成我们的数据或训练集。面积单位为 1000 平方英尺&a…...

STM32 中断优先级管理(二)

NVIC中断管理相关函数主要在HAL库关键文件stm32f1xx_hal_cortex.c中定义。 中断优先级分组函数 void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup);这个函数的作用是对中断的优先级进行分组&#xff0c;这个函数在系统中只需要被调用一次。 void HAL_NVIC_SetPrio…...

保姆级教程:手把手教你用百度网盘下载并安装MATLAB R2024a(附详细步骤与激活文件替换指南)

MATLAB R2024a 从下载到激活的全流程避坑指南 第一次安装MATLAB就像在迷宫里找出口——下载链接在哪&#xff1f;ISO文件怎么处理&#xff1f;工具箱该选哪些&#xff1f;最要命的是那个神秘的Crack文件夹&#xff0c;稍有不慎就会卡在最后一步。作为过来人&#xff0c;我整理了…...

Microsoft团队提出“弯曲雅各布天梯”新思路,了解量子数据如何教会AI做更好的化学

来源&#xff1a;ScienceAI 本文约3500字&#xff0c;建议阅读5分钟量子计算机生成精确数据&#xff0c;AI模型学习并实现百万倍加速预测。有时&#xff0c;一个视觉上引人注目的隐喻&#xff0c;足以让你传达一个复杂的观点。2001 年夏天&#xff0c;杜兰大学物理教授 John P.…...

如何用低代码工作流解决业务流程自动化难题:从设计到落地的实践指南

如何用低代码工作流解决业务流程自动化难题&#xff1a;从设计到落地的实践指南 【免费下载链接】Awesome-Dify-Workflow 分享一些好用的 Dify DSL 工作流程&#xff0c;自用、学习两相宜。 Sharing some Dify workflows. 项目地址: https://gitcode.com/GitHub_Trending/aw/…...

SEO优化有哪些快速有效的方法_自媒体如何通过SEO快速提升曝光度

SEO优化有哪些快速有效的方法 在当前数字化时代&#xff0c;自媒体如何通过SEO快速提升曝光度成为了许多内容创作者和网络营销人员关注的焦点。搜索引擎优化&#xff08;SEO&#xff09;不仅能够提升网站的自然排名&#xff0c;还能有效增加自媒体的曝光度。具体有哪些快速有效…...

扫雷-HTML

<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>扫雷游戏</title><style>* {margin:…...

Phi-3-mini-128k-instruct处理复杂数据结构:算法题解答与优化展示

Phi-3-mini-128k-instruct处理复杂数据结构&#xff1a;算法题解答与优化展示 最近在尝试用一些轻量级的模型来辅助解决编程问题&#xff0c;特别是算法和数据结构这块。很多人觉得大模型只能写写简单的脚本&#xff0c;处理复杂逻辑可能不太行。正好手头有Phi-3-mini-128k-in…...

openEuler 24.03 LTS SP3 跨版本升级安装源设置全指南

一、背景认知 1.1 版本与升级基础 openEuler 24.03 LTS SP3&#xff1a;2025 年 12 月 30 日正式发布&#xff0c;基于 Linux 6.6 内核&#xff0c;提供 4 年社区长期支持&#xff0c;修复了前期版本的已知问题&#xff0c;大幅优化了 AI、数据库和异构计算性能&#xff0c;是…...

告别重复造轮子:用快马一键生成qoderwork官网开发骨架,效率倍增

作为一个经常需要搭建官网的前端开发者&#xff0c;我深刻理解那种面对空白项目时的无力感。每次新建项目&#xff0c;光是搭建基础框架、配置路由、设计布局就要花掉大半天时间。最近尝试用InsCode(快马)平台生成qoderwork官网的骨架代码&#xff0c;效率提升简直惊人。 为什么…...

在快马平台用Qt快速构建音乐播放器原型:十分钟搞定跨平台UI

最近在做一个音乐播放器的原型设计&#xff0c;尝试用Qt框架在InsCode(快马)平台上快速验证想法。整个过程比想象中顺利很多&#xff0c;特别适合需要快速验证UI方案的场景。这里记录下我的实践过程&#xff0c;分享给同样需要快速原型开发的朋友们。 为什么选择Qt做音乐播放器…...

Qwen3-ASR-0.6B真实效果:直播间弹幕语音→实时字幕滚动+敏感词过滤联动

Qwen3-ASR-0.6B真实效果&#xff1a;直播间弹幕语音→实时字幕滚动敏感词过滤联动 1. 开篇&#xff1a;直播间语音转文字的痛点 做直播的朋友都知道&#xff0c;实时字幕是个让人又爱又恨的功能。爱的是它能提升观众体验&#xff0c;让不方便开声音的人也能看懂内容&#xff…...