美文网首页
从零开始学习Linux(三十八):Shell基础之变量测试与内容

从零开始学习Linux(三十八):Shell基础之变量测试与内容

作者: 通靈鹿小六 | 来源:发表于2020-12-29 08:34 被阅读0次

本小节内容不用完全死记硬背,知道有这个知识点。遇到的时候能够理解其意思,等到需要用到的时候查询表格就好。

1、变量测试与内容替换

用来测试一个变量到底有没有设置。

变量置换方式 变量y不存在 变量y为空值 变量y值非空
x=${y-新值} x=新值 x为空 x=$y
x=${y:-新值} x=新值 x=新值 x=$y
x=${y+新值} x为空 x=新值 x=新值
x=${y:+新值} x为空 x为空 x=新值
x=${y=新值} x=新值 y=新值 x为空 y值不变 x=$y y值不变
x=${y:=新值} x=新值 y=新值 x=新值 y=新值 x=$y y值不变
x=${y?新值} 新值输出到标准错误输出 x为空 x=$y
x=${y:?新值} 新值输出到标准错误输出 新值输出到标准错误输 x=$y

从表格中可以看到:
${y-新值} 和 ${y:-新值}是一组;
${y+新值} 和 ${y:+新值}是一组;
${y=新值} 和 ${y:=新值}是一组;
${y?新值} 和 ${y:?新值}是一组;

一共有-+=?四个分类,每个分类中分为两个,一个是带冒号一个不带冒号。这样子就感觉比较好记了。

1.1、举例x=${y-新值}

以第一行作为例子,我们来讲一下整个表格的意思。

1.1.1、当y变量不存在的时候x=新值

删除变量y,并且定义x=${y-新值},此时变量是不存在的,所以x=新值。执行命令:

[root@VM-0-8-centos ~]# unset y
[root@VM-0-8-centos ~]# x=${y-123}
[root@VM-0-8-centos ~]# echo $x

命令执行结果,如下图所示:

1.1.2、当y变量为空值的时候x为空

定义变量y为空值,并且定义x=${y-新值},此时x为空值。执行命令:

[root@VM-0-8-centos ~]# y=""
[root@VM-0-8-centos ~]# x=${y-123}
[root@VM-0-8-centos ~]# echo $x

命令执行结果,如下图所示:

1.1.3、当y变量值非空的时候x为y的值

定义变量y为456,并且定义x=${y-新值},此时x为y值。执行命令:

[root@VM-0-8-centos ~]# y="456"
[root@VM-0-8-centos ~]# x=${y-123}
[root@VM-0-8-centos ~]# echo $x

命令执行结果,如下图所示:

1.2、举例x=${y:-新值}

剩下的变量替换方式可以自行测试验证一下。

相关文章

  • 从零开始学习Linux(三十八):Shell基础之变量测试与内容

    本小节内容不用完全死记硬背,知道有这个知识点。遇到的时候能够理解其意思,等到需要用到的时候查询表格就好。 1、变量...

  • Linux Shell:基础知识和Shell变量

    摘要:Linux,Shell 整理Shell内容要点: Shell基础知识 Shell变量的类型 Shell变量赋...

  • Linux学习之环境变量

    转自:Linux学习之环境变量在linux中环境变量是一个重要的概念,环境变量可以由系统、用户、shell、以及其...

  • shell基础

    Linux学习 一、shell介绍 Linux shell基础 什么是shell shell是一个命令解释器,提供...

  • shell脚本基础

    编写脚本 编程基础 shell脚本 创建shell脚本 变量 运算 测试 配置用户的环境

  • linux shell 脚本攻略

    linux shell 脚本攻略 [TOC] 1.基本概念与特征 基础 双引号: 引号内可以引用变量,与php相同...

  • Shell学习(一)

    title: shell学习(一)time: 2018.3.1 星期五 16:11 变量 变量与变量的内容以 ...

  • 学习笔记 | 常用Linux Shell命令

    本文是最常用、最基础的Linux Shell命令纪录,可用于查阅 注意 定义变量时"="两边不能有空格 条件测试语...

  • Linux学习-Shell基础-bash变量

    变量变量是计算机内存的单位,其实存放的值可以改变。当Shell脚本需要保存一些信息时,如一个文件名或数字,就把它存...

  • linux基础

    linux基础 ============ 1.主要内容: 常用的linux命令(shell命令) l...

网友评论

      本文标题:从零开始学习Linux(三十八):Shell基础之变量测试与内容

      本文链接:https://www.haomeiwen.com/subject/kqnlnktx.html