很多小伙伴在寫shell腳本的時候需要把命令輸出的值賦給一些變量,使得腳本在運行過程中能夠順利使用這些變量。例如:很多時候我們就需要獲取當前目錄的絕對路徑,pwd這個命令大家在熟悉不過,可是要把這個命令的輸出值賦給變量就不知道何從下手了。莫慌,辦法還是有的,我們可以把這個命令的輸出值賦給一個叫pwd的變量(當然,你也可以隨意命名一個變量名稱)。具體操作是這樣的:pwd=`pwd`,需要注意的是這里的引號並非通常我們使用的單引號,而是左上角ESC下面那個按鍵,也就是數字鍵1前面的那個。
大家可以來看一下這個例子,如果想使用下面的腳本直接運行的話請刪除前面的行號數字。
1 #!/bin/bash
2 whoami=`whoami`
3 pwd=`pwd`
4 today=`date`
5 last=`last -10`
6 echo "Your name is $whoami"
7 echo "The current directory is $pwd"
8 echo "Today is $today"
9 echo "`last -10`"
10 echo "The last login $last"
在第9行代碼中,我們直接輸出最近10次登陸的詳情,這屬於是直接使用,在第10行代碼中我們使用了變量,實際運行結果與第9行一致。
當然,另外一種方式就是把上面的`換成成對的小括號,半角狀態下輸入,需要在小括號前加“$”。
輸出結果如下:
命令參數也是完全可以帶上的,我們來看一下:
1 #!/bin/bash
2 LANGUAGE=$(echo -e "$LANG \n")
3 echo $LANGUAGE
4 list=`ls -al`
5 echo -e "$list"
運行結果如下,完全能夠達到預期效果。
其他方式希望小伙伴們在評論區展開討論,大家一起進步!感覺動手去試試吧!