Linxu Shell 編程學習之「變量」

Shell 變量功能簡介linux

1、什麼是變量shell

2、變量命名bash

3、變量賦值ssh

4、變量顯示(變量引用)ide

5、變量撤銷函數

6、變量類型學習

7、查看本地變量及環境變量命令ui

-------------------------------------------------------------------------------------------------------------------
spa

Shell 變量功能簡介命令行

       變量是bash環,境中很是重的一個內容,咱們知道Linux是多用戶、多任務的環境,每一個人登陸系統都能取得一個bash,每一個人都可以 使用bash執行mail這個命令來收到「本身」的郵件,問題是bash是如何得知你的郵件信箱是哪一個文件?這就須要「變量」的幫助了。下面咱們就來介紹這變量的使用與設置等內容。


1、什麼是變量

       變量是內存空間的名稱,變量可用於存儲數據,並且數據能夠按需改變,因此稱爲變量。說的簡單一點,就是咱們能夠用一個簡單的「字眼」來替代另外一個比較複雜或者是容易變更的數據。這最大的好處就是「方便」。


2、變量命名

       shell 腳本編寫中,使用變量無需事先聲明變量,便可使用。可是變量的命令須要遵循如下規則。

       一、變量名稱只能是英文字母、數字、下劃線,而且不能以數字開頭;

       二、系統默認變量一般爲大寫英文字符,自行設置變量可使用大寫字母開頭加小寫、或全小寫(依照用戶的喜愛)。不該與系統變量重名;

       三、變量命令嚴格區分大小寫;

       四、不能使用標點符號及bash的關鍵字作變量名;

       五、變量名稱最好可以見名知義,以方便認識變量的做用;


3、變量賦值

語法:變量名=值

var_name=value    或    set var_name=value

       變量與變量內容以一個等號「=」來鏈接,而且等號兩邊不能有空格;


[root@lgh01 ~]# Name=liuguohui


4、變量顯示(變量引用)

       變量的顯示:echo

echo $var_name 或 echo ${var_name}


[root@lgh01 ~]# echo $Name
liuguohui


       變量的顯示就如同上面的示例,利用echo就可以讀出變量的內容,只是須要在變量名稱前面加上$,或者是以${var_name}的方式來顯示均可以。


5、變量撤銷

       語法:unset 變量名

                  unset var_name


[root@lgh01 ~]# unset Name
[root@lgh01 ~]# echo $Name


能夠看到,變量撤銷後,再次使用變量引用,已經看不到以前設置變量的值了。


6、變量類型

       本地變量:只對當前shell進程有效,對其子shell及其它shell都無效;

               var_name=value;


       局部變量:僅對當前代碼段有效,其做用範圍不包括當前shell的全部位置;

               local var_name=value;


       環境變量:對當前shell及其子shell有效;

               export var_name=value;


       位置變量:shell腳本的命令行參數,它們的名稱是以單個整數來命名,當整數大於9時,就應該以花括號{}括起來;

               $1,$2,$3...

               ${10}...


       特殊變量:

               #,目前進程的參數個數。

               @,傳遞給當前進程的參數。置於雙引號內,會展開爲個別參數。

               *,傳遞給當前進程的命令行參數,置於雙括號內,展開時爲一單獨參數。

               -,在引用時給的Shell 的選項。

               ?, 前一命令的退出狀態。

               $,shell的PID。

               0,shell程序的名字。

               !,最近一個後臺命令的PID。能夠此方式存儲進程編號,而後經過wait命令同步。

               HOME,主目錄。

               IFS,內部的字段分隔符,通常爲製表符、空格、以及換行符。

               LANG,當前locale的默認名稱

               LC_ALL,當前locale的名稱。會覆蓋LANG與其餘LC_*變量。

               LC_CTYPE,在模式匹配期間,用來肯定字符類別的當前locale名稱。

               LINENO,剛執行過的行在腳本或函數內的行編號。

               NLSPATH,在$LC_MESSAGES(XSI)所給定的信息語言裏,信息目錄的位置。

               PATH,命令查找的路徑。

               PPID,父進程的進程編號。

               PS1,主要的命令提示字符串,默認爲「$」。

               PS2,行繼續提示字符串默認">"。

               PS4,以set -x設置的執行跟蹤的提示字符串,默認爲「+」。

               PWD,當前工做目錄。


7、查看本地變量及環境變量命令

       本地變量:(set)

       查看本地變量能夠使用set命令:

[root@lgh01 ~]# set
BASH=/bin/bash
BASH_ARGC=()
BASH_ARGV=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="3" [1]="2" [2]="25" [3]="1" [4]="release" [5]="x86_64-redhat-linux-gnu")
BASH_VERSION='3.2.25(1)-release'
COLORS=/etc/DIR_COLORS
COLUMNS=122
CVS_RSH=ssh
DIRSTACK=()
EUID=0
GROUPS=()
G_BROKEN_FILENAMES=1
HISTFILE=/root/.bash_history
HISTFILESIZE=1000
HISTSIZE=1000
HOME=/root
......

       環境變量:查看環境變量可使用如下命令,如下命令執行結果相同

           env

           export

           printenv


       總結:本篇博文簡單介紹了 Linux shell「變量」的基礎知識,內容比較簡單,但願對你們有所幫助。學習shell的最好的方法就是要多多練習哦!好了,就到這吧!

相關文章
相關標籤/搜索