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
本地和遠程都顯示此歡迎信息
?