CentOS变量基本命令,CentOS变量命令


1.变量的分类

1)用户自定义变量


2)环境变量: 这种变量中主要保存的是和系统操作环境相关的数据


3)位置参数变量: 这种变量主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是用来固定的


4)预定义变量: 是bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的

2.自定义变量

名称由数字、下划线、字母组成,但是开头不能用数字,如”2Name”


注意:


1)变量等号两边不能有空格


2)若有空格,则用 ” “” 括起来


3)用””转义符,可使特殊符号失效如: “$name”


4)如果要进行变量叠加,可用”$变量名” 或者${变量名}


5)若把命令结果作为变量值,则用反引号(不推荐) 或者$()包名命令


6)环境变量名建议大写


举例:


aa=”test” echo$aa 就是输出test


aa=123 aa=”$aa”456 输出什么呢?


set 变量查看命令


unset + 变量名 删除变量命令

3.环境变量

exprot 变量名=变量值申请变量


env 查询变量


unset 删除变量名


PATH: 系统查找命令路径(系统查找命令是有默认排序和路径)


PATH=”$PATH”:/root 变量叠加(临时)


环境变量的PS1:


定义系统提示符的变量,也就是[主机名@……]# 那个东西


查询显示当前的配置命令:echo$PS1


更换的格式为:PS1=’[ …… ]$’(记得最后留个空格,更好输入命令)


选项包括:


d显示日期,格式为”星期 月 日”


h显示简写主机名,如默认主机名为”localhost”


t显示24小时制时间,格式为”HH:MM:SS”


T显示12小时制时间,格式为”HH:MM:SS”


A显示24小时制时间,格式为”HH:MM”


u显示当前用户名


w显示当前所在的目录的完整名称


W显示当前所在的目录的最后一个目录


#执行的第几条命令


$提示符,如果是root用户则会显示”#”,如果是普通用户则显示”$”

4.位置参数与预定义

位置参数一般在shell里使用


$nn为数字,0代表命令本身,十以上参数用大括号括起来


$*代表把命令行所有参数,$*都看作一个整体


$@表示所有参数,但是每个参数区别对待


$#代表命令行、参数的个数预定义可与echo一起使用


$?判断上一个命令,为0则为正确执行,非0则为错误(具体数,由命令决定)


$$当前进程号


$!后台运行最后一个进程号

5.declare 声明变量类型

declare [+/-] [选项] 变量名


- : 给变量设定类型属性


+: 取消给变量设定类型属性


-i 将变量声明为整数型


-x 将变量声明为环境变量 =>exprot


-p 显示指定变量的被声明类型

6.expr 或 let 数值运算工具

如:


aa=11 bb=22


dd=$(expr$aa +$bb) 注意!+号两边必须要有空格


常用 “$((运算)) ” 或者 “$[运算]”


如: ff=$(($aa + $bb))


运算符的优先级:



变量测试与内容替换: 测试变量内容或者是否替换,从输出x看结果


7.环境变量配置

source 配置文件. 配置文件


上面两种配置文件直接生效,不用重启(注意有个点)


下面是五个默认配置文件:


/etc/profile


/etc/profile.d/*.sh(所有以.sh结尾)


/etc/bashrc


这三个对所有用户都有效


~/.bash_profile


~/.bashrc


用户命令下,这两个对特定的用户有效

注销时生效的环境变量配置文件:


~/.bash_logout


~/.bash_history

8.shell登陆信息

(登陆之前)


/etc/issue (本地登录)


/etc/issue.net (在远程终端欢迎信息)


Ps.需在ssh配置文件/etc/ssh/sshd_config


#Banner ………… 下,加入Banner /etc/issue.net


再重启,service sshd restart


/etc/motd直接vim操作,可以显示(登陆之后的提示信息)

变量这一块确实是个难点,不仅仅很多配置文件,更是要熟记于心,加油。

相关内容

    暂无相关文章