【shell】Linux shell函數入門講解
阿新 • • 發佈:2018-03-21
shell 函數 linux 運維 自動化 Linux shell函數
寫在前面:函數,這個詞在剛剛入門的同學看來很高大上,其實不然,shell裏面的函數非常簡單,函數的作用其實就是減少代碼量,所以這邊的篇幅可能會稍微短一點。
函數的基本格式
函數的格式:
function functionname(){
函數內容}
建議:直接使用 functionname(){}格式,前面不需要加function關鍵字,因為本來函數就是用來減少代碼量的,加上關鍵字function並沒有什麽作用。
註意:定義了函數必須調用才能生效,只定義是沒有任何效果的哦!
函數的運用場景
假設有一個代碼是需要多次使用,而我們又不想寫重復的代碼,那麽這時候我們就可以使用函數了,把重復的代碼寫在一個函數中,如果需要調用的話我們就可以直接調用函數即可。
例子:
判斷文件是否存在,如果不存在則返回一串很長的字符提示。這時我們兩種做法,一種是多敲一遍重復的代碼。
[ -z a.txt ] && echo fdsfsdfsdfkslfjklsdjfklsdfjkl || echo fjklsfjlsjflkjlkjlkjafsd [ -z b.txt ] && echo fdsfsdfsdfkslfjklsdjfklsdfjkl || echo fjklsfjlsjflkjlkjlkjafsd [ -z c.txt ] && echo fdsfsdfsdfkslfjklsdjfklsdfjkl || echo fjklsfjlsjflkjlkjlkjafsd
第二種,把重復的值寫到一個函數中,然後調用。
創建函數andinfo
andinfo(){
echo fdsfsdfsdfkslfjklsdjfklsdfjkl
}
創建函數orinfo
orinfo(){
echo fjklsfjlsjflkjlkjlkjafsd
}
調用函數
[ -z a.txt ] && andinfo || orinfo
運行結果:
[root@XiaoPeng scripts]# bash test1.sh
fjklsfjlsjflkjlkjlkjafsd
註意:shell中函數的調用不需要‘()‘,直接寫函數名即可;shell中的函數不能傳參。
版權所有:arppinging
【shell】Linux shell函數入門講解