用户变量存在于所有的shell中,与用什么shell无关,比如:HOME,SHELL等
export --- 设置当前终端有效的临时变量
显示/设置当前导出成用户变量的shell变量。《Linux就该这么学》 一起学习。
终端关闭的同时,export的变量也失效。
题主你好,
先说结论: 判断当前用户是否为root.
-----扩展阅读-----
在linux中echo命令说白了就是显示后面内容的:
另外,linux中, 使用"$+变量名"的形式来引用变量:
解释一下上图, 我们先使用a=123定义了一个变量a,它的值为123, 重点来了, 我们想看一下变量a的值, 直接使用echo a这样是不行的, 可以看到,如果这样写,输出的是字符串a,而不是我们期望的变量a的值, 因此正确的形式是echo $a,通过上图可以观察到,这样写成功输出了变量a的值123.
-----
通过上面的铺垫, 题主应该知道echo $UID这条命令中, echo是用来显示UID这个变量的内容的.
而UID是linux系统里的一个全局变量, 它代表的是当前用户的id, 这个id是在我们创建用户的时候分配的,可以看一下/etc/passwd文件, 每行代码一个用户, 其中第三个字段就是该用户相对应的uid:
重要的一点是, 用户与id号是一一对应的, 一般不会出现一个用户有两个id号或是一个id与两个用户相关联的情况. uid为0的用户是root,这个是固定的, 因此常常利用uid的值是否为0来判断当前用户是否为root
=====
希望可以帮到题主, 欢迎追问.
Linux系统设置:set命令详解set命令作⽤主要是显⽰系统中已经存在的shell变量,以及设置shell变量的新变量值。使⽤set更改shell特性时,符号"+"和"-"的作⽤分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。如果要定义新的变量,可以使⽤命令以变量名=值的格式进⾏定义即可。
语法
set(选项)(参数)
选项
-a:标⽰已修改的变量,以供输出⾄环境变量。
-b:使被中⽌的后台程序⽴刻回报执⾏状态。
-C:转向所产⽣的⽂件⽆法覆盖已存在的⽂件。
-d:Shell预设会⽤杂凑表记忆使⽤过的指令,以加速指令的执⾏。使⽤-d参数可取消。
-e:若指令传回值不等于0,则⽴即退出shell。
-f:取消使⽤通配符。
-h:⾃动记录函数的所在位置。
-H Shell:可利⽤"!"加<指令编号>的⽅式来执⾏history中记录的指令。
-k:指令所给的参数都会被视为此指令的环境变量。
-l:记录for循环的变量名称。
-m:使⽤监视模式。
-n:只读取指令,⽽不实际执⾏。
-p:启动优先顺序模式。
-P:启动-P参数后,执⾏指令时,会以实际的⽂件或⽬录来取代符号连接。
-t:执⾏完随后的指令,即退出shell。
-u:当执⾏时使⽤到未定义过的变量,则显⽰错误信息。
-v:显⽰shell所读取的输⼊值。
-x:执⾏指令后,会先显⽰该指令及所下的参数。
参数
取消某个set曾启动的参数。
实例
使⽤declare命令定义⼀个新的环境变量"mylove",并且将其值设置为"Visual C++",输⼊如下命令:
declare mylove='Visual C++' #定义新环境变量
再使⽤set命令将新定义的变量输出为环境变量,输⼊如下命令:
set -a mylove #设置为环境变量
执⾏该命令后,将会新添加对应的环境变量。⽤户可以使⽤命令和命令分别显⽰和搜索环境变量"mylove",输⼊命令如下:
env | grep mylove #显⽰环境变量值
此时,该命令执⾏后,将输出查询到的环境变量值。
¥
5.9
百度文库VIP限时优惠现在开通,立享6亿+VIP内容
立即获取
Linux系统设置:set命令详解
Linux系统设置:set命令详解
set命令作⽤主要是显⽰系统中已经存在的shell变量,以及设置shell变量的新变量值。使⽤set更改shell特性时,符号"+"和"-"的作⽤分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。如果要定义新的变量,可以使⽤命令以变量名=值的格式进⾏定义即可。
语法
set(选项)(参数)
选项
-a:标⽰已修改的变量,以供输出⾄环境变量。
第 1 页
-b:使被中⽌的后台程序⽴刻回报执⾏状态。
-C:转向所产⽣的⽂件⽆法覆盖已存在的⽂件。
-d:Shell预设会⽤杂凑表记忆使⽤过的指令,以加速指令的执⾏。使⽤-d参数可取消。
-e:若指令传回值不等于0,则⽴即退出shell。
-f:取消使⽤通配符。
-h:⾃动记录函数的所在位置。
-H Shell:可利⽤"!"加<指令编号>的⽅式来执⾏history中记录的指令。
第 2 页
-k:指令所给的参数都会被视为此指令的环境变量。
-l:记录for循环的变量名称。
-m:使⽤监视模式。
-n:只读取指令,⽽不实际执⾏。
-p:启动优先顺序模式。
-P:启动-P参数后,执⾏指令时,会以实际的⽂件或⽬录来取代符号连接。
-t:执⾏完随后的指令,即退出shell。
-u:当执⾏时使⽤到未定义过的变量,则显⽰错误信息。
第 3 页
-v:显⽰shell所读取的输⼊值。
-x:执⾏指令后,会先显⽰该指令及所下的参数。
参数
取消某个set曾启动的参数。
实例
使⽤declare命令定义⼀个新的环境变量"mylove",并且将其值设置为"Visual C++",输⼊如下命令:
declare mylove='Visual C++' #定义新环境变量
第 4 页
再使⽤set命令将新定义的变量输出为环境变量,输⼊如下命令:
set -a mylove #设置为环境变量
执⾏该命令后,将会新添加对应的环境变量。⽤户可以使⽤命令和命令分别显⽰和搜索环境变量"mylove",输⼊命令如下:
env | grep mylove #显⽰环境变量值
此时,该命令执⾏后,将输出查询到的环境变量值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)