linux shell編程對變量的賦值
linux shell編程對變量的賦值
shell對變量的賦值,所有的.變量都是由字符串組成,不需要對變量名預先聲明,而且有很多關鍵字供編程者使用。下面列舉例子詳細説明。 在終端下建立文件 #vi
#!/bin/sh
#set a variable a
a="hello world"
#print a
echo "A is :"
echo $a
在這個程序當中,可以看到shell編程與C編程的區別,沒有那麼嚴格的語法,在每句不需要加“;”,
而且在shell中引用變量的時候前面加“$”。
1 當變量名與其他文字混淆的時候,需要加“{}”
#!/bin/sh
# set a variable num
num=2
echo "the variable num is $numnd"
運行程序後,答案並不是 the variable num is 2nd,而是什麼都沒有輸出。因為bash會尋找numnd變量,但是並沒有給這個變量賦值。所以將程序改為:
echo "the variable num is {$num}nd"
2 默認變量
$#:傳入腳本的命令行參數個數
$*:所有命令行的參數值,而且各個參數值之間有空格表示
$0:命令本身,就是要執行的shell文件名
$1:第一個命令行參數
$2:第二個命令行參數
$3
$4
example:
#!/bin/sh
echo "number of vars:"$#
echo "number of vars:"$0
echo "number of vars:"$*
echo "number of vars:"$1
echo "number of vars:"$2
echo "number of vars:"$3
運行./file 11 22 33
輸出結果:
3
file
11 22 33
11
22
33
3局部變量
在變量首次賦值是加關鍵字local可以聲明為局部變量。
#!/bin/sh
hello="aa"
echo $hello
function fucn1{
local hello="bb"
echo $hello
}
func1
echo $hello
-
Linux中正則表達式使用方法
在Linux系統中使用grep、awk和sed命令時,需要使用正則表達式。那麼正則表達式的使用方法有哪些?跟yjbys小編一起來看看吧!比如我通過grep找代碼編譯結果中是否有錯誤。或者是否有我代碼的錯誤。這裏説下正則表達式基本的應用:•匹配行首與行尾。•匹配數...
-
Linux技巧總結
1、處理特殊的文件名假設Linux系統中有一個文件名叫-aaa,如果我們想對它進行操作,例如現在要刪除它,如果我們按照一般的刪除方法在命令行中輸入rm-aaa命令,界面將會提示我們是無效選項(invalidoption),原來由於文件名的第一個字符為-,Linux把文件名當作選項了,我們可...
-
Centreon的依賴安裝
centreon是開源的IT監控軟件,由法國人於2003年開發,最初名為Oreon,並於2005年正式更名為centreon。下面小編準備了關於Centreon依賴安裝的文章,提供給大家參考!一、Centreon依賴安裝介紹Centreon的安裝有一定的複雜性,對操作系統庫依賴較多,在安裝方式上有源碼編譯安...
-
Linux認證基礎知識:php相對路徑和絕對路徑
在不斷注重大學聯考能力提高的同時,尤其是Linux認證備考的'後階段,我們選擇的是求準求穩求規範。此複習輔導不等於題海戰術,而是要積累實戰經驗,解決掉一些考場失誤等問題。一個好的php代碼,無論放到windows還是linux,不同版本的php上,都能正確的輸出結果,才是一個好代碼...