shell编程--变量

本文详细介绍了Shell脚本中变量的命名规则、使用方法、只读变量的设定以及如何删除变量。通过示例展示了局部变量、环境变量和Shell变量的差异,强调了在不同上下文中变量的有效范围和权限控制。了解这些基础知识对于编写和管理Shell脚本至关重要。
摘要由CSDN通过智能技术生成

一、

1、命名变量

变量名=

变量名命名规则:
a、命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
b、中间不能有空格,可以使用下划线 _。
c、不能使用标点符号。
d、不能使用bash里的关键字(可用help命令查看保留关键字)
例:

name="name"

2、使用变量

$变量名   或   ${变量名}

第二种使用方式是为了将变量名与其他字符串分开
例:

#! /bin/bash
a="test1"
echo "bbbbbb$abbbbbb"  #解释器认为abbbbbb是一个变量,却有找不到(因为没定义它)这个变量所以这里只打印bbbbbb
b="test2"
echo "aaaaaa${b}aaaaaa" #这里打印aaaaaatest2aaaaaa

结果:
在这里插入图片描述

只读变量(readonly)

readonly name="test"

变量名前面加了readonly变量就只可以读取,不能在修改了。
例:

#! /bin/bash
readonly a="test1"
echo "bbbbbb${a}bbbbbb"
a="test2" #由于前面定义变量a时加了readonly,这里就执行不聊了。
echo "aaaaaa${a}aaaaaa"

结果:
在这里插入图片描述

删除变量

unset name

变量被删除后就不能用了。unset 命令不能删除只读变量。
例:

#! /bin/bash
a="test1"
echo $a
readonly b="test2"
echo $b
unset a
echo $a #变量a被删除了,所以这里不会输出内容。
unset b #b是只读变量,无法unset,会报错。
echo $b

结果:
在这里插入图片描述

二、

分类

1、局部变量

局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。

2、环境变量

所有的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。

3、shell变量

shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值