`

shell 变量赋值与替换

阅读更多

:=  如${var1:=pppp}

情形一:var1未被定义或值为空就把:=后的值赋值给变量var1

得出结果:echo ${var1:=pppp} #pppp

                  echo $var1 #pppp

情形二:如 var2="hello world";${var2:="thank you"} 当变量var2的值不为空,此表达式不改变变量的值

得出结果:echo ${var2:=pppp} #hello world

                  echo $var2 #hello world

总结:(:= )会比较它两边的值,判断左边的变量是否不为空,不为空值不变,否则就把右边的值赋值给左边的变量

= 如${var3=ppppp} 当var3 未被定义时,就把ppppp赋值给var3,若已定义即使值为空也不会把ppppp赋值给变量var3

 

文字描述太罗嗦,还是画个表格

 

以下表格以var变量名为例${var操作符号"hello world"},null 表示值为空,在终端体现为空行

符号 变量  
未定义 值为空 值不为空(为"shell value")
 echo ${var操作符号"hello world"} echo $var   echo ${var操作符号"hello world"}  echo $var  echo ${var操作符号"hello world"} echo $var
 :=  hello world  hello world  hello world  hello world shell value shell value
 =  hello world  hello world  null  null shell value shell value
 :+  null  null  shell value hello world hello world shell value
 +  null  null  null  null hello world shell value
 :-   hello world  null   hello world  null shell value shell value
 -   hello world  null  null  null shell value shell value
 :?

 返回一个错误信息

bash: var: hello world

  null

 返回一个错误信息

bash: var: hello world
null shell value shell value
?

 返回一个错误信息

bash: var: hello world
null null null shell value shell value

 

 

0
3
分享到:
评论

相关推荐

    shell编程.doc(变量 用户定义变量,环境变量,位置变量(shell 参数) )

    Shell变量是编程的核心部分,包括用户定义变量、环境变量和位置变量(shell参数)。用户定义变量由`$`符号后跟变量名来引用,例如`myvar=value`。环境变量是可供子进程使用的全局变量,如`HOME`表示用户的主目录,`...

    linux运维学习笔记:Shell变量.pdf

    5. 变量赋值与引用: Shell中,变量赋值可以使用单引号、双引号或不使用引号。不包含空格的简单字符串通常不需要引号。双引号允许变量扩展,即Shell在解析时会将其中的变量替换为实际值。单引号则保留字面意义,即...

    shell变量学习

    Shell变量赋值是从右到左进行的,如果未赋值,Shell默认赋值为空。例如,`X=$Y`,在`Y`未赋值时,`$X`将为空。此外,变量的赋值可以嵌套,如`Y=y`后再`Z=$Y`,`$Y`的值将被赋给`$Z`。 4. **删除变量** 使用`unset...

    linux实验六 shell变量

    3. **命令替换与管道有何不同**: - **命令替换**:将命令的输出作为参数传递给另一个命令,通常使用反引号 ``` 或者 `$()` 来包裹命令。 - **管道**:将命令的输出作为另一个命令的输入,使用 `|` 符号连接命令。

    练习shell变量、重定向、管道等相关命令

    ### 练习Shell变量、重定向、管道等相关命令 在Linux和Unix系统中,Shell脚本是一种非常强大的工具,用于自动化任务处理、系统管理和数据处理等。熟练掌握Shell中的变量、重定向和管道操作对于提高工作效率至关重要...

    深入_Shell_变量操作

    深入探讨Shell变量操作:变量替换扩展与字符串处理 在Linux Shell编程中,变量操作是构建高效、灵活脚本的关键技能之一。本文将深入探讨Shell变量的高级操作技巧,特别是变量替换扩展和字符串处理,旨在帮助读者...

    shell变量与常用符号2(视频)

    在这个“shell变量与常用符号2”的视频教程中,我们将深入探讨Shell中的变量管理以及各种常用的特殊符号,这些对于编写高效、灵活的Shell脚本至关重要。 一、Shell变量 1. 用户定义变量:用户可以在脚本或命令行中...

    6 shell变量1

    以下是关于Shell变量的一些关键知识点: 1. **变量命名规则**: - 变量名称允许由字母、数字和下划线组成,但不能以数字开头。 - 变量的默认类型是字符串,这意味着即使赋值为数字,它也会被视为文本。 - 赋值时...

    shell编程基础之变量

    了解并熟练掌握这些基本的Shell变量知识,对于编写高效、可靠的Shell脚本至关重要。通过结合条件语句、循环结构和其他Shell特性,你可以创建出功能强大的自动化工具,提高日常Linux系统管理的效率。在实际应用中,...

    LINUX操作系统基础shell变量的应用二PPT教案学习.pptx

    在Linux操作系统中,Shell变量是控制Shell行为的关键元素。它们存储数据,并且可以在脚本或命令行中被引用。以下是对Shell变量应用的详细讲解: 首先,获取变量的值可以通过在命令行中使用`echo $变量名`或者`echo ...

    详解shell 变量

    【shell 变量】是Unix/Linux系统中...理解并熟练掌握shell变量的使用,对于编写高效、可靠的shell脚本至关重要,尤其是在自动化任务和系统管理中。通过合理运用变量类型、定义和访问方式,可以更灵活地控制脚本的行为。

    02-SHELL编程之变量定义

    本章节主要聚焦于SHELL变量的定义与使用,这是SHELL编程中的基础也是核心内容之一。 #### 二、SHELL变量定义 在SHELL编程中,变量是用来存储数据的一种容器。变量的值可以在脚本运行过程中被改变,这对于编写灵活...

    shell浅谈之一 变量和引用

    2. 变量赋值: - 赋值时,等号两侧不允许有空格,值包含空格需用双引号包围。 - 使用`unset`命令可以清除变量的值。 - `readonly`命令用于设置变量为只读,之后不能再进行赋值操作。 二、无类型变量特性 与...

    Shell脚本中变量与字符串操作的实战指南

    涵盖的内容包括变量的定义和赋值、特殊变量的应用、字符串的各种操作如拼接、长度计算、子串提取、查找子串位置、替换子串以及不同类型的引号使用和特殊字符的转义技巧。文章还提供了一个综合案例,展示了如何利用...

    Linux与UNIX Shell编程指南.pdf

    变量可以通过赋值语句或let命令来声明和赋值。 4. 控制结构 控制结构是Shell脚本中用于控制执行流程的语句,包括if语句、case语句、for循环、while循环等。这些语句可以根据不同的条件和逻辑来执行不同的操作。 5...

    Korn Shell.doc (kshel语法、变量和内置命令简介)

    ### Korn Shell (ksh) 语法、变量和内置命令详解 #### 一、Korn Shell 简介 Korn Shell(简称 ksh)是一种功能强大的 Unix Shell,由 David Korn 在 AT&T 贝尔实验室开发。Korn Shell 结合了 Bourne Shell 和 C ...

    linux shell 简明教程.pdf

    #### 二、Shell变量详解 **1. Shell变量的设置、查看和清除** - **设置**: 变量通过简单的赋值语句设置,如`variable=value`。 - **注意**: 等号两边不能有空格。 - **空值**: 若要给变量赋空值,可以在等号后面...

Global site tag (gtag.js) - Google Analytics