Shell | 变量

系统预定义变量

常用系统变量$HOME$PWD$SHELL$USER

例子:

(1)查看系统变量的值

$ echo $HOME
/home/zlq

(2)显示当前 Shell 中所有变量:set

$ set
BASH=/bin/bash
BASH_ALIASES=()
BASH_ARGC=()
BASH_ARGV=()
...

自定义变量

基本语法:

(1)定义变量:变量名=变量值,注意,=号前后不能有空格

(2)撤销变量:unset 变量名

(3)声明静态变量:readonly 变量,注意:不能 unset

变量定义规则:

(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写

(2)等号两侧不能有空格

(3)在 bash 中,变量默认类型都是字符串类型,无法直接进行数值运算。

(4)变量的值如果有空格,需要使用双引号或单引号括起来。

例子:

(1)定义变量 A

$ A=5
$ echo $A
5

(2)给变量 A 重新赋值

$ A=8
$ echo $A
8

(3)撤销变量 A

$ unset A
$ echo $A

(4)声明静态的变量 B=2,不能 unset

$ readonly B=2
$ echo $B
2
$ B=9
-bash: B: readonly variable

(5)在 bash 中,变量默认类型都是字符串类型,无法直接进行数值运算

$ C=1+2
$ echo $C
1+2

(6)变量的值如果有空格,需要使用双引号或单引号括起来

$ D=I love banzhang
-bash: world: command not found
$ D="I love banzhang"
$ echo $D
I love banzhang

(7)可把变量提升为全局环境变量,可供其他 Shell 程序使用

export 变量名
$ vim helloworld.sh

在 helloworld.sh 文件中增加 echo $B

#!/bin/bash

echo "helloworld"
echo $B

$ ./helloworld.sh
Helloworld

发现并没有打印输出变量 B 的值。

$ export B
$ ./helloworld.sh
helloworld
2
posted @ 2023-07-13 13:28  张Zong在修行  阅读(8)  评论(0编辑  收藏  举报