|NO.Z.00054|——————————|LinuxShell|——|Linux&Shell$变量.V11|--------------------------------------------
2022/3/27 7:22:43
本文主要是介绍|NO.Z.00054|——————————|LinuxShell|——|Linux&Shell$变量.V11|--------------------------------------------,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
[LinuxNetworkEnd:Linux&Shell$变量.V11] [Applications.LinuxNetworkEnd][|Linux|shell编程|shell基础|变量测试|]
一、例子一:
### --- 例子一: ~~~ 删除变量 y [root@localhost ~]# unset y ~~~ 进行测试 [root@localhost ~]# x=${y-new}
~~~ 因为变量 y 不存在,所以 x=new [root@localhost ~]# echo $x new ~~~ 但是变量 y 还是不存在的和表 11-12 对比下,这个表是不是可以看懂了。 ~~~ 这是变量 y 不存在的情况,那如果变量 y 的值是空呢? [root@localhost ~]# echo $y
~~~ 给变量 y 赋值为空 [root@localhost ~]# y="" ~~~ # 进行测试 [root@localhost ~]# x=${y-new}
~~~ 变量 x 和变量 y 值都是空 ~~~ 那如果变量 y 有值呢? [root@localhost ~]# echo $x [root@localhost ~]# echo $y ~~~ 给变量 y 赋值 [root@localhost ~]# y=old
~~~ # 进行测试 ~~~ 变量 x 和变量 y 的值都是 old [root@localhost ~]# x=${y-new} [root@localhost ~]# echo $x old [root@localhost ~]# echo $y old
二、 例子2
### --- 例子2 ~~~ 那如果大括号内是“=”号,又该是什么情况呢?先测试下变量 y 没有设置的情况: ~~~ 删除变量 y [root@localhost ~]# unset y ~~~ # 进行测试 [root@localhost ~]# x=${y:=new}
~~~ 变量 x 和变量 y 的值都是 new ~~~ 一旦使用“=”号,那么变量 y 和变量 x 都会同时进行处理, ~~~ 而不像例子 1 中只改变变量 x 的值。 ~~~ 那如果变量 y 为空又是什么情况呢? [root@localhost ~]# echo $x new [root@localhost ~]# echo $y new
~~~ 设定变量 y 为空 [root@localhost ~]# y="" ~~~ # 进程测试 [root@localhost ~]# x=${y:=new}
### --- 变量 x 和变量 y 的值都是 new ~~~ 一旦在大括号中使用“:”,那么变量 y 为空或者不设定,处理方式都是一样的了。 ~~~ 那如果 y 已经赋值了,又是什么情况: [root@localhost ~]# echo $x new [root@localhost ~]# echo $y new
~~~ 给 y 赋值 [root@localhost ~]# y=old ~~~ # 进行测试 [root@localhost ~]# x=${y:=new}
~~~ 原来变量 x 和变量 y 的值都是 [root@localhost ~]# echo $x old [root@localhost ~]# echo $y old
三、例子 3:
### --- 例子三: ~~~ # 再测试下大括号中是“?”的情况吧: ~~~ 删除变量 y [root@localhost ~]# unset y
~~~ 会把值“new”输出到屏幕上 ~~~ 那如果变量 y 已经赋值了呢: [root@localhost ~]# x=${y?new} -bash: y: new
~~~ 给变量 y 赋值 [root@localhost ~]# y=old ~~~ # 进行测试 [root@localhost ~]# x=${y?new}
~~~ 变量 x 和变量 y 的值都是 old [root@localhost ~]# echo $x old [root@localhost ~]# echo $y old
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
来自为知笔记(Wiz)
这篇关于|NO.Z.00054|——————————|LinuxShell|——|Linux&Shell$变量.V11|--------------------------------------------的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南