一、什么是變量
變量的定義
定義本身
變量就是內存一片區域的地址
變量存在的意義
命令無法操作一直變化的目標
用一串固定的字符來表示不固定的目標可以解決此問題
二、變量的類型及命名規范
環境級別
export A=1
在環境關閉后變量失效
退出后 關閉
用戶級別(永久的設定變量)
vim ~/.bash_profile
export A=1
source ~/.bash_profile 生效
系統級別(所有的用戶都可以讀取到這個變量)
vim /etc/profile
export A=1
vim /etc/profile.d/A.sh
export B=3
此時用其他用戶也可以生效
變量名稱
變量名稱可包含的字符
字母
下劃線_
數字
變量名稱定義規則
不能用數字開頭
建議:
變量名稱短全用大寫字符
變量名稱長用_區分子類
WESTOS
Westos_Linux
westoS_Linux
三、變量的轉譯聲明及數組
1)轉譯
\ #轉譯單個字符
有多少個特殊字符就有多少個斜杠
" " #弱引用,批量轉譯個數字符 不能轉譯"\ " “” “$” “!”
’ ’ #強引用
2)聲明
a=1
echo $ab
echo ${a}b
3)變量的數組
a=(1 2 3 4 5)
a$[a[@]:起始元素id:元素個數]
echo ${a[0]} ##數組中第一個元素
echo ${a[1]} ##數組中最后一個元素
echo ${a[*]} ##數組中所有元素
echo ${a[@]} ##數組中所有元素
echo ${a[@]:0:3} ##數組中13個元素
echo ${#a[@]} ##數組中元素的個數
unset a[n] ##刪除數組中的第n1個元素
unset a ##刪除a這個數組
四、命令別名及用戶環境的設定
查看命令的別名
alias
永久設定命令別名
編輯配置文件
vim ~/.bashrc
source ~/.bashrc 使之生效
在這個文件內編輯的只是當前的用戶可以使用
若使在全體用戶中可以使用則
編輯系統級的配置文件
vim /etc/bashrc
source /etc/bashrc 使之生效
若要刪除這個命令別名
需將系統級和用戶級的配置文件中的命令別名刪掉
并且執行
unalias xie 刪除當前環境中的alias
用戶環境變量的更改
用戶級:編輯配置文件
vim ~/.bash_profile
系統級:編輯配置文件
vim /etc/profile.d/path.sh
五、變量的高級用法
1)直接利用命令執行結果
$()| ##優先執行
或者··
2)腳本中的傳參
傳參:將腳本外部的內容傳遞給腳本內部
非交互模式:
創建一個腳本
vim westos.sh
交互式
編輯一個腳本
vim westos1.sh
七、腳本函數
定義:
程序的別名(腳本當中的腳本就叫函數)
先編輯一個腳本
vim westos2.sh
ACTION 是一個函數
也就是腳本當中的腳本
相當于是給ACTION賦了一個值,而這個值是命令腳本
練習腳本
sh create_user.sh
Please input username: westos
westos exist> westos is exist>Please input username:
westos not existplease input password: 無回顯密碼
此用戶會自動建立并且密碼為提示后設定的密碼
并顯示:westos is created
并再次提示Please input username:
當Please input username:exit
此腳本退出