shell变量

目录

变量定义

变量分类

用户自定义变量

命名要求

变量调用

变量叠加

变量查看

变量删除

环境变量

查询环境变量

常见环境变量

位置参数变量及预定义变量


变量定义

变量即在程序运行过程中它的值是允许改变的量,变量是用一串固定的字符来标示不固定的值的一种方法,
变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 Script 运行时可更改的程序信息,
在 shell 中变量是不能永久保存在系统中的,必须在文件中声明

变量分类

自定义变量:由用户自己定义,修改和使用
环境变量:由系统维护,用于设置工作环境
只读变量:只可以读取不可以更改
位置变量:通过命令行给脚本传递参数
预定义变量:Bash中内置的一类变量,不能修改

用户自定义变量

命名要求

  • 区分大小写

  • 不能使程序中的保留字和内置变量:如:if, for,hostname

  • 只能使用数字、字母及下划线,且不能以数字开头,注意:不支持短横线 “ - ”,和主机名相反

  • 不要使用内置的变量,使用英文尽量使用词义通俗易懂,PATH

  • 大驼峰StudentFirstName

  • 小驼峰studentFirstName

  • 下划线: student_name

变量调用

[root@localhost ~]# name=ww;echo $name
ww

变量叠加

[root@localhost ~]# name=${name}:gg;echo $name
ww:gg

变量查看

[root@localhost ~]# set|grep name
name=ww:gg

变量删除

unset 变量名


环境变量

在当前shell和子shell中生效,写入配置文件,对全局生效。

查询环境变量

[root@localhost ~]# env
XDG_SESSION_ID=19
HOSTNAME=localhost.localdomain
TERM=xterm
SHELL=/bin/bash
HISTSIZE=1000
SSH_CLIENT=192.168.48.1 61753 22
SSH_TTY=/dev/pts/3
USER=root
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33

常见环境变量

[root@localhost ~]# echo $PATH                  #系统查找命令路径
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/python3/bin:/root/bin

[root@localhost ~]# echo $PS1                   #迎宾界面
\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\$

                                           
[root@localhost ~]# echo $HOSTNAME              #主机名
localhost.localdomain

[root@localhost ~]# echo $HISTSIZE              #命令历史缓存条数
1000

环境变量改动后,需要重启或者source 配置文件 方能生效。


位置参数变量及预定义变量

        位置变量也称为位置参数,使用$1、$2、$3、…、$9 表示

        $*:表示所有位置参数的内容看成一个整体返回

        $@:表示所有位置参数的内容分割成n份,每份作为一个独立的个体返回

        $#:表示命令行中位置参数的个数

        $0:表示当前执行的脚本或程序的名称

        $?:表示前一条命令执行后的返回状态,返回值为 0 表示执行正确,返回任何非 0 值均表示执行出现异常

$$:显示当前进程号
$!:显示后台运行任务中最后一个pid 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值