linux 环境变量和shell变量
变量是任何一种编程语言都必不可少的组成部分,用于存放各种类型的变量。脚本语言大多是弱类型语言(动态语言),也就是说在使用变量时,不需要事先声明变量的类型,只需要直接赋值就可以。
在Bash中,每一个变量的值都是字符串。无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储。有一些特殊的变量会被shell环境和操作系统保留,用来存储一些特别的值,
这类变量就称为环境变量,相信大家对环境变量也并不陌生,因为即使在windows操作系统上,也存在环境变量。
1、 简介
linux下的变量可分成两种:Shell变量和环境变量。
Shell变量,又称本地变量,包括私有变量以及用户变量,不同类的shell有不同的私有变量,bash,ksh,csh等,每种shell的私有变量都不一样
环境变量,又称用户变量,与shell无关
常规定义变量的方法:变量名=变量值
注意:
1.变量名和=号之间不能有空格,否则shell会把变量名当成命令
2.变量名称一般使用大写字母
2、 常用的相关命令
env命令:显示当前用户的环境变量
set命令:不加参数,显示当前shell的所有本地设置的Shell变量,否则设置shell变量
unset命令:unset为shell内建指令,删除变量或函数。
exprot命令:显示(设置)当前导出成用户变量的shell变量(注意:export为bash或类bash私有的命令)
echo $变量名:查看变量值(其中,$变量:引用变量的意思)
3、环境变量
变量采用常见的命名方式进行命名。当程序启动时,他接受一族环静变量,可以使用env(eviroment)命令查看所有与终端相关的环境变量。对于进程来说,其运行时的环境变量可以用下面的命令来查看:
cat /proc/$PID/environ #PID总是一个整数
pgrep firefox #我刚才的结果返回3013
cat /proc/3013/environ #返回了一堆,不列出
UID环境变量
UID是一个重要的环境变量,可以用于检查当前脚本是以超级用户还是以普通用户的身份运行的。root用户的UID是0。
转载于:https://www.cnblogs.com/disanyuzhou/p/6825919.html
linux 环境变量和shell变量相关推荐
- linux超级基础系列——shell变量(本地变量和环境变量)
linux超级基础系列--shell变量(本地变量和环境变量) 2006-12-04 00:39 为使shell编程更有效,系统提供了一些shell变量.shell变量可以保存诸如路径名.文件名或者一 ...
- linux脚本查看变量类型,Shell变量:Shell变量的定义、删除变量、只读变量、变量类型...
变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据.脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则. 在 Bash shell 中,每一个变量的值 ...
- Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
Shell支持自定义变量. 定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编 ...
- linux shell变量作用域,Shell变量的作用域:Shell全局变量、环境变量和局部变量
Shell变量的作用域(Scope),就是Shell变量的有效范围(可以使用的范围). 在不同的作用域中,同名的变量不会相互干涉,就好像A班有个叫小明的同学,B班也有个叫小明的同学,虽然他们都叫小明( ...
- linux学习笔记:shell变量
首先,这里要区分几个概念: 局部变量 也叫 本地变量 :在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问 全局变量 也叫 环境变量 :所有的程序,包括shell启动的 ...
- Makefile中的变量和shell变量
我们在写makefile时 多多少少会用到shell脚本, 对于变量的在shell中的使用有一些要注意的细节.让我们从一个简单的makefile来看看. 注意makefile中一定要有一个目标,且一定 ...
- linux创建环境变量有什么用,环境变量和shell变量到底有什么区别呢?
open-end 于 2007-06-02 21:21:10发表: 我们仍以BASH 为讨论的shell 语言 每一种编程语言中,我们都会碰到变量的作用域的问题.(比如在函数中定义的变量在函数外不能使 ...
- linux echo输出结果赋值给变量,shell变量n位补零
name=`echo $1|awk '{printf("%04d\n",$0)}'` 将 $1 进行4位数补零,后传递字符串给 name. 将下面代码,命名为 playVid ...
- linux中特别的Shell变量 DUALCASE
DUALCASE In the MKS shell, case statements and file name generation are case-insensitive unless DUAL ...
- 【Linux脚本篇】shell变量的使用
目录
最新文章
- 【Gradle】借助gradle的ProductFlavor实现多App间代码库复用
- POJ 1144 Network(无向图连通分量求割点)
- Maven学习总结(十)——使用Maven编译项目gbk的不可映射问题
- 8. Mac brew usage and php version
- 085 对象的绑定方法
- 多项logistic回归系数解释_Logistic回归结果的回归系数和OR值解读
- Pandas:利用Styler对象设置Series、Dataframe在Jupyter Notebook中的输出样式(2)——内置样式
- stm32命名规范总结
- python列表求平均数_python 列表平均值
- 【渝粤教育】国家开放大学2018年秋季 0088-21T保险学概论 参考试题
- 计算机翻译属于下列哪个领域的应用,机器翻译应用平民化:机器翻译属于下列哪个领域的应用...
- linux服务器用lighttpd+mysql5+php5+SupeSite/X-Space+discuz构建社区门户
- plsql官方下载地址
- Java二维数组-输出二维数组的和
- IO流(输入流与输出流)
- final修饰局部变量
- 工厂(Factory)模式
- Bear and Three Balls
- Plonky = Plonk + Halo + Rescue
- iPhone 13维修换屏问题:芯片决定面容ID“生死”