等号左右不能有空格
有空格需要用双引号或单引号
双引号内特殊字符有意义
单引号内特殊字符就是纯字符
变量叠加
x=123 x="$x"456 x=${x}789
变量查询set
set -u调试时候用可以提示是否存在变量
unset删除变量不需要加$
unset x
用户自定义变量
-----
变量查看 set
通过set命令可以查看已经定义的变量
set
区分变量未声明或者值为空
echo $a
如果a未定义,上面输出是一个空,如果定义了没赋值也是空,这时就没法区分是哪种情况。这时通过运行命令set -u,再运行上面的命令就会输出,变量未定义
set -u echo $a -bash: a: unbound variable
删除变量 unset
unset name
变量前不需要加$符号,因为删除的不是值
1.调用变量
在变量前面加$符号就可以了。$变量名
echo是输出的意思
变量的值默认都是字符串类型,即使是数字,比如 x=5,5是字符串不是数字类型
2.变量叠加(拼接)
x=123
x="$x"456 // 123456
x=¥{x}456 // 123456
等号两边不能有空格
变量名不能以数字开头
值有空格要用单引号或双引号括起来;双引号里面的特殊符号,比如$是有特殊含义的,如果用单引号就只是表示一个符号,失去了特殊的含义
set命令 => 查看环境变量 + 自定义变量
视频中 的 "变量叠加" 的意思:
x = "$x"456 得出=> x = (x对应的值)再连接"456"
比如x的值是123 则得到 x = 123456
以上的行为 和 ${x}456 是一样的!
另外 单引号不解析被引起来的变量的值 而是直接使用变量名 双引号会解析并使用变量值
! Shell编程的"+"号 在定义变量时 会被写入变量 而不是作为运算符使用.
Shell 编程:
Shell在定义变量时, 变量名的第一位不需要加"$", 但在调用时, 必须加"$".
shell默认变量是字符串类型,所以当定义x=5表示x=“5”的字符串,因此不能直接做加减乘除运算
unset删除变量 变量名前面不加$符号
set -u
调用未声明的变量会报错(默认无任何提示)
变量的定义:变量=变量名(=左右不能有空格)
变量的调用:$变量名
---变量的叠加
x=123
x="$x456" -------123456
x=${x}789 -------123456789
set --查询系统下已经生效的变量
unset 变量名 --删除变量 如:unset name
变量追加
x=123
x="$x"456
x=${x}789
#调用未声明的变量是会报错
set -u
变量删除
unset name
定义变量
变量名=变量值
例如:
x=5
name="jie cao" #=号左右不可有空格""会解析特殊符号,例如$,''不会解析特殊符号
变量调用
echo $变量名
例如:
echo $x
echo $name
a=1;x=6
z=$a+$x
echo $z #定义变量的时候不需要加$符 在调用变量的时候需要加$符,输出的是字符所有变量默认的值都是字符串类型,不可做Math运算
变量叠加
x=123
y="$x"123 或者 y=${x}123
查看变量
set #会列出系统中所有的变量,包括环境变量和自定义变量
set -u $变量名 #设定当调用不存在变量时,会提示错误
删除变量
unset 变量名
例如:
unset x
linux 变量
set #查看所有变量
env #查看环境变量
set 设置变量
-u 当执行时使用到未定义过的变量,则显示错误信息。
set name #设置变量
echo $name #使用变量
unset 删除变量或函数。
-f 仅删除函数。
-v 仅删除变量。
unset name #删除变量
用户自定义变量
定义 变量名=变量值,例如x=5,name=“John”,=左右两侧不能加空格。
变量调用 $变量名
x=5;y=6;z=$x+$y; #z的内容为5+6
变量叠加 x=123; x="$x"456; x=${x}789
变量查看
set #选项:-u 如果设定此选项,此后调用未声明变量时会报错(默认无任何提示,输出空)
变量删除 unset 变量名 #不加$,不是删除变量内容
变量赋值时等号左右不能加空格
变量叠加(值拼接)时可使用 "$x"拼接内容,或者${x}拼接内容
变量叠加 》》》》
1、变量=值 e.g. x=5 注意,变量名只能是字母、下划线、数字组成且不能以数字开头,=号左右不可有空格
2、""会解析特殊符号,例如$,''不会解析特殊符号
3、引用变量:$变量名 例如:$x a=1 echo $a 定义变量的时候不需要加$符 在调用变量的时候需要加$符
4、所有变量默认的值都是字符串类型,不可做Math运算
5、变量叠加 e.g y="$x"123 或者 y=${x}123
6、查看变量 set 会列出系统中所有的变量,包括环境变量和自定义变量 set -u //设定当调用不存在变量时,会提示错误
7、删除变量 unset 变量名 例如:unset x
变量定义=左右两侧不能有空格,否则系统会认为这是系统命令
变量叠加
set命令查询系统下已经生效的变量
set-u 如果设定此选项,调用未声明变量时会报错(默认无任何提示 )
unset 删除变量
1、变量=值 e.g. x=5 注意,变量名只能是字母、下划线、数字组成且不能以数字开头,=号左右不可有空格
2、""会解析特殊符号,例如$,''不会解析特殊符号
3、引用变量:$变量名 例如:$x
4、所有变量默认的值都是字符串类型,不可做Math运算
5、变量叠加 e.g y="$x"123 或者 y=${x}123
6、查看变量 set 会列出系统中所有的变量,包括环境变量和自定义变量 set -u //设定当调用不存在变量时,会提示错误
7、删除变量 unset 变量名 例如:unset x
删除变量:
使用unset 变量名 命令来删除变量,变量名前面不需要$。