Linux系统的变量

系统中有环境变量自定变量

环境变量

环境变量是系统默认设置的参数,一般有PATH、LANG、HOME、SHELL等多种变量
通过echo $PATH 查看指定变量 或 env命令查看所有环境变量。
附:环境变量含义
PATH:执行档的搜索路径,用户使用命令时,系统会搜索PATH指向的目录路径。
SHELL:目前使用的shell是哪个程序。一般为/bin/bash。
HOME:此用户的家目录。
HISTSIZE:设置记录多少条用户输入的命令。一般为1000.
LANG:记录语系数据。
RANDOM:随机数变量,此变量用于生成0~32767之间的数。
![env命令](https://uploadfiles.nowcoder.com/images/20200608/173327529_1591620752566_BE5E64B534420DBFD52EF89EBA3E74B5 "图片标题")

random随机数
![图片说明](https://uploadfiles.nowcoder.com/images/20200608/173327529_1591620840079_162BFE29978CD87CBA71FB21F2772A49 "图片标题")
注意:定义变量时,只有用双引号括起才会去搜索定义中是否引用其他变量。

自定变量

自定变量就是用户使用中自己定义的变量
直接命令行 变量名=值 (此方式定义的变量不会永久保存)
注:定义自定变量的等号两边不能加空格,且变量名不能以数字开头。
通过 set 命令可查看所有变量(包含环境变量与自定变量)
![set命令](https://uploadfiles.nowcoder.com/images/20200608/173327529_1591621097556_7BB7CFAFEDF090F7FE8D31F728FCE0EB "图片标题")
PS1变量为命令提示符,指的是登录系统时,命令行的 [root@www ~]# 。设置PS1变量的值可使登入的提示符改变。
符:设置字符含义
\d :显示出 [星期 月 日]的日期格式。
\H :完整的主机名,如[www.???.XXX]。
\h :仅取主机名中第一个小数点之前的名字。
\t :显示时间,24小时制(含秒数)。
\T :显示时间,12小时制(含秒数)。
\A :显示时间,24小时制(不含秒数)。
@ :显示时间,12小时制采用am/pm样式。
\u :显示目前用户名。
\v :显示BASH版本信息。
\w :显示完整的工作目录名称。指显示的目录从根目录写起。
\W :显示当前目录名,在家目录则是以 ~ 代替。
\# :显示这是下达的第几条命令。

\$ :权限提示符,root用户时以 # 显示,其他用户用 $ 显示。

定义PS1变量
![PS1](https://uploadfiles.nowcoder.com/images/20200608/173327529_1591621361183_740FF9955148C4763CC1DA19589932AF "图片标题")

?变量使用
?变量就是打印上一执行命令的回传值,一般Linux只有出错时才会打印错误信息,执行正确是啥都不会提示(PS:除去有回显的命令,ls)
回传值为 0 则是执行过程未发生错误,发生错误就会回传错误代码,如下图。
![图片说明](https://uploadfiles.nowcoder.com/images/20200609/173327529_1591686758665_0FFB9505AC6C3CD383E5B0FBDB6CD013 "图片标题")

等号两边不能加空格
![自定义变量](https://uploadfiles.nowcoder.com/images/20200608/173327529_1591620968674_50E806629AABD8DBE37F9AFFD5EE19C7 "图片标题")

变量值的修改
当仅想删除变量值中某些字符时,如下图:
#:代表最短匹配(从前删)
##:代表最长匹配(从前删)
%:最短匹配(从后删)
%%:最长匹配(从后删)
图片说明

当想替换变量值的某些字符时,如下图:
/旧字符/新字符 : 斜杠之间的旧字符会被新字符替换(仅替换一次符合内容的旧字符)
//旧字符/新字符 : 斜杠之间的旧字符会被新字符替换(替换所有符合内容的旧字符)
图片说明

PS:注意原变量不改变,做法应该是将改变后变量的值赋给一个变量。

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务