news 2026/6/26 1:47:16

第1章 Shell基础语法核心(20例,初级运维)-补充内容003【运算符、判断变量、比较数字等】【20251228】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第1章 Shell基础语法核心(20例,初级运维)-补充内容003【运算符、判断变量、比较数字等】【20251228】

文章目录

  • Shell脚本比较运算完全指南(基础版)
    • 前言:Shell比较的核心基础
    • 一、除`=`/`==`外的常用比较运算符(分类型+基础实例)
      • 1. 字符串比较运算符(最基础,新手高频用)
        • 新手实例:字符串比较完整演示
      • 2. 数字比较运算符(新手易踩坑,重点掌握)
        • 新手实例:数字比较完整演示(两种语法)
      • 3. 文件测试运算符(运维高频,基础必会)
        • 新手实例:文件测试基础演示
      • 4. 逻辑组合运算符(多条件判断基础)
        • 新手实例:多条件判断演示
    • 二、脚本中判断变量是否为空(5种基础方法+场景覆盖)
      • 方法1:`-z` 运算符(POSIX标准,最推荐)
      • 方法2:`[[ -z $var ]]`(bash扩展,更简洁)
      • 方法3:直接比较空字符串(新手易理解)
      • 方法4:判断“空+空格”场景(进阶,新手需了解)
      • 方法5:默认值判断(新手实用技巧)
      • 新手避坑:`[ ]` 中变量必须加双引号!
    • 三、脚本中进行数字比较(新手必掌握的2种核心方式)
      • 核心前提:禁止用 `=`/`==` 比较数字!
      • 方式1:POSIX标准语法(所有Shell支持,基础)
      • 方式2:bash扩展语法(更直观,新手推荐)
    • 四、新手避坑总结(基础必记)
    • 五、基础练习(新手自测)
      • 参考答案(新手可直接运行)

Shell脚本比较运算完全指南(基础版)

前言:Shell比较的核心基础

Shell 中没有“布尔值”类型,所有比较的结果通过退出状态码体现:

  • 0= 真(条件成立)
  • 非0(通常是1)= 假(条件不成立)
  • 核心语法区分:[ ](POSIX标准,所有Shell支持)、[[ ]](bash扩展,更简洁)、(( ))(bash专属,数字运算/比较)
  • 新手必记:[ ]前后必须加空格,变量建议加双引号(避免空值语法错误);[[ ]]/(( ))对空格和引号要求更宽松。

一、除=/==外的常用比较运算符(分类型+基础实例)

1. 字符串比较运算符(最基础,新手高频用)

运算符含义兼容性基础语法最简可运行实例
!=字符串不相等
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/16 2:19:18

Circuit Training实战:从资源瓶颈到高效芯片布局的优化之路

在芯片设计领域,我们经常面临一个现实问题:如何用有限的硬件资源完成复杂的布局优化任务?通过深入实践Circuit Training框架,我探索出了一套兼顾效率与成本的分布式训练方案。 【免费下载链接】circuit_training 项目地址: htt…

作者头像 李华
网站建设 2026/6/15 20:41:13

protobuf-net性能监控终极指南:快速识别和优化序列化瓶颈

protobuf-net性能监控终极指南:快速识别和优化序列化瓶颈 【免费下载链接】protobuf-net Protocol Buffers library for idiomatic .NET 项目地址: https://gitcode.com/gh_mirrors/pr/protobuf-net protobuf-net作为.NET平台上高效的Protocol Buffers序列化…

作者头像 李华
网站建设 2026/6/16 13:52:06

HOScrcpy解决方案:鸿蒙远程调试的终极实践指南

HOScrcpy解决方案:鸿蒙远程调试的终极实践指南 【免费下载链接】鸿蒙远程真机工具 该工具主要提供鸿蒙系统下基于视频流的投屏功能,帧率基本持平真机帧率,达到远程真机的效果。 项目地址: https://gitcode.com/OpenHarmonyToolkitsPlaza/HO…

作者头像 李华
网站建设 2026/6/13 15:57:16

Arduino IDE安装配合STM32支持包的固件配置流程

从零开始:用Arduino IDE玩转STM32开发板的完整指南 你有没有遇到过这种情况?手里的Arduino Uno跑不动你的项目了——采样频率上不去,内存不够用,串口通信一多就卡顿。而当你打开STM32的数据手册,密密麻麻的寄存器和HA…

作者头像 李华
网站建设 2026/6/18 7:46:29

智能数据归因终极指南:PandasAI语义层技术深度解析

在当今数据驱动的商业环境中,准确追踪和分析各个渠道对最终转化的贡献度,已成为企业决策的关键环节。然而,传统的数据归因分析面临着技术门槛高、计算复杂、结果解释困难等挑战。本文将为您揭示如何通过PandasAI的语义层技术,实现…

作者头像 李华