0.12 数值运算与运算符
aa=11
bb=22
cc=$aa+$bb
echo $cc
#11+22,因为变量默认是字符串类型
1、declare声明变量类型
declare +/- 选项 变量名
选项:
- 给变量设定类型属性
+ 取消变量的类型属性
-i 将变量声明为整数型
-x 将变量声明为环境变量
-p 显示指定变量的被声明类型
2、数值运算
方法1
aa=11
bb=22
delcare -i cc=$aa+$bb
方法2 expr 或 let 数值运算工具
cc=$(expr $aa + $bb)
#加号左右两侧必须有空格
方法3 (推荐使用)
cc=$(($aa+$bb))
或者
cc=$[$aa+$bb]
0.12 变量测试 与 内容替换
(此表格会看就行)
通过x被赋予的值判断y的值是否存在
变量置换方式 变量y没有设置 变量y为空值 变量y设置值
x=${y-新值} x=新值 x=空值 x=$y
x=${y:-新值} x=新值 x=新值 x=$y
x=${y+新值} x=空值 x=新值 x=新值
x=${y:+新值} x=空值 x=空值 x=新值
x=${y=新值} x=新值 y=新值 x=空值 y不变 x=$y y不变
x=${y:=新值} x=新值 y=新值 x=新值 y=新值 x=$y y不变
x=${y?新值} 新值标准错误输出 x=空值 x=$y
x=${y:?新值} 新值标准错误输出 新值标准错误输出 x=$y
0.13 环境变量配置文件
0.13.1环境变量配置文件简介
1、source命令 作用,不用重启,是配置文件直接生效
source 配置文件
或
. 配置文件
2、环境变量配置文件简介
环境变量配置文件中主要是定义对系统的操作环境生效的系统默认环境变量
比如 PATH HISTSIZE PS1 HOSTNAME 等默认环境变量
/etc/profile
/etc/profile.d/*.sh
~/.bash_profile
~/.bashrc
/etc/bashrc
ect目录下,对所有用户生效
家目录下的,对用户自身有效
0.13.2环境变量配置文件作用
环境变量配置文件调用流程
/etc/profile /etc/profile.d/*.sh /etc/profile.d/lang.sh /etc/sysconfig/i18n
~/.bash_profile ~/.bashrc /etc/bashrc 命令提示符
/etc/profile.d/*.sh
/etc/profile的作用
USER变量
LOGNAME变量
MAIL变量
PATH变量
HOSTNAME变量
HISTSIZE变量
umask
调用/etc/profile.d/*.sh文件
~/.bash_profile的作用
调用了~/.bashrc文件
在PATH变量后面加入了":$HOME/bin"这个目录
~/.bashrc的作用
定义默认别名
调用/etc/bashrc
/etc/bashrc的作用
PS1变量
umask变量
PATH变量
调用/etc/profile.d/*.sh文件
0.13.3 其他配置文件和登录信息
1、注销时生效的环境变量配置文件
~/.bash_logout
2、其他配置文件
~/bash_history 保存历史命令
3、Shell登录信息
本地终端欢迎信息:/etc/issue
转义符 作用(显示)
\d 当前系统日期
\s 操作系统名称
\l 登录终端号
\m 硬件体系结构,如i386、i686等
\n 主机名
\o 域名
\r 内核版本
\t 当前系统时间
\u 当前登录用户的序列号
远程登录欢迎信息:/etc/issue.net
转义字符在/etc/issue.net文件中不能使用
是否显示欢迎信息,由ssh的配置文件/etc/ssh/sshd_config决定
加入“Banner /etc/issue.net”行才能显示(记得重启SSH服务 service sshd restart)
登陆后欢迎信息:/etc/motd
本地和远程都显示此欢迎信息