Shell:变量
变量
变量是暂时存储数据的地方及数据标记,所存储的数据存在于内存空间中,通过正确地调用内存空间中变量的名字就可以取出与变量对应的数据。
变量类型
变量可分为两类:环境变量(可以看作全局变量)和普通变量(局部变量)。
环境变量
环境变量一般是指用export
内置命令导出的变量,用于定义Shell的运行环境,保证Shell命令的正确执行。
按照语法规范,环境变量名的字母必须为大写。
同时,子Shell进程可以继承父Shell中的环境变量。
定义环境环境变量三个方式:
# 方式一
export ENV_VAR="haha"
# 方式二
ENV_VAR="haha"
export ENV_VAR
# 方式三
declare -x ENV_VAR="haha"
通过env
可以查看所有环境变量。
PATH环境变量
PATH
环境变量,它决定了Shell调用命令时的搜索路径。例如:
export PATH=/usr/local/python/bin:$PATH
设置全局变量并永久生效
可以配置在以下文件内:
/etc/profile
/etc/bashrc
# 若要在登录后初始化或显示加载内容,则把脚本文件放在/etc/profile.d/下即可(无须加执行权限)。
/etc/profile.d/
Tips:对于用户的环境变量设置,比较常见的是用户家目录下的
.bashrc
和.bash_profile
。
环境变量生效顺序
分为两种情况:用户登录启动的shell和非用户登录启动的shell(如手动执行的bash或者远程ssh连接产生的bash)。
用户登录加载环境变量的顺序:
非用户登录启动的shell加载环境变量的顺序:
普通变量
变量定义:
var=value
value可以是数字或者字符串或者命令,字符需要用单引号或者双引号引起来,命令需要用反引号或者$(命令)
方式。
安装语法规范,变量名的字母必须小写。详细规范请参考:Shell语法规范
# 数字
var=123
# 字符串
var='string'
# 命令
var=$(command)
var="$(command "$(command1)")"
调用变量
使用${var}
对变量var
进行调用。
Tips:变量的名称是
var
,而不是${var}
,${var}
是在引用、访问变量在内存中保存的值。
使用${#var}
获取变量var
保存的字符长度。
[root@test ~]# var='sssss'
[root@test ~]# echo ${var}
sssss
[root@test ~]# echo ${#var}
5
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗