Linux之Shell的變量設置

各位客官早,今天小店新增一道特色菜:紅燒變量,各位慢用
前序:今天要說的是Shell的變量功能,變量是BASH環境中頗爲重要的一個元素,爲什莫這麼說呢?舉個例子,在Linux中,是一個多人多任務的環境,每個人登錄系統之後都會有一個屬於自己的bash shell.每個人都能夠使用bash執行mail這個命令來收取自己的郵件,但是bash是如何知道你的郵箱是哪個文件?你想過嗎,這個時候就需要變量的協助了。
一、什麼是變量
這是個很簡單的問題,大家基本都能答上來,用一個數學的方法給大家講一講:y=ax+b,在這裏y就是變量,那麼變量的概念也就是讓某一個特定的字符串代表不固定的內容,其實就是用一個簡單的字眼來替換另一個比較複雜或容易變動的內容。說到了這裏,我就接着上面關於郵箱的問題給大家一個解釋。在Linux中,MAIL就是一個變量,每個郵箱默認都是以MAIL這個變量進行存取的,比如當gao這個用戶登錄時,它會取得MAIL這個變量,而這個變量的內容其實就是/var/spool/mail/gao,假如此時是另一個用戶li登錄系統,那麼它也會取得這個變量MAIL,而此時變量的內容就是/var/spool/mail/li,所以當我們使用郵件讀取命令mail來讀取自己的郵箱時,這個程序就可以直接讀取mail這個變量的內容,就能夠自動的分辨出自己屬於的郵箱。是不是很清楚了?變量還有一個很大的好處就是方便,比如你要寫一個大型的腳本,裏面涉及到了一些相關的路徑,並且是出現多次的路徑,假如這時你換了一臺主機,裏面所有的路徑都要改,哇,是不是會累死你。而如果你使用了變量的話,那麼腳本里面的路徑都用變量代替即可。比如你的腳本里面有一個路徑是:/var/spool/mail/gao,該路徑在腳本里面一共出現了50次,如果需要修改的話,你還能活下去嗎?所以這個時候如果有一個變量lujing=/var/spool/mail/gao,那腳本里面所有的路徑就都可以用lujing來替換了,是不是很省心?
二、變量的使用與設置
說一說變量的使用(查看),這個也很簡單,使用echo這個命令就可以,但是在使用時一定要注意變量的前面要加上【$】符號
在這裏插入圖片描述
再說一說變量的設置規則:
1)變量與變量內容以一個等號【=】來連接,而且等號兩邊不能有空格,注意看第二次有空格的是不成功的
在這裏插入圖片描述
2)變量名稱只能是英文字母或數字,但是開頭的不能是數字
在這裏插入圖片描述
3)雙引號內的特殊字符可以保持其原本特性
在這裏插入圖片描述
4)單引號內的特殊字符爲一般字符
在這裏插入圖片描述
5)可以使用轉義符【\】將特殊符號變成一般字符,注意與第三項進行區分
在這裏插入圖片描述
6)取消變量的方法是unset
在這裏插入圖片描述
小二,打烊了,上閘板

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章