日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Shell脚本——函数

發布時間:2025/3/8 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Shell脚本——函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Shell 函數的本質是一段可以重復使用的腳本代碼,這段代碼被提前編寫好了,放在了指定的位置,使用時直接調取即可。

一、語法

Shell 函數定義的語法格式如下:

function name() {statements[return value] }

對各個部分的說明:

  • function是 Shell 中的關鍵字,專門用來定義函數;
  • name是函數名;
  • statements是函數要執行的代碼,也就是一組語句;
  • return value表示函數的返回值,其中 return 是 Shell 關鍵字,專門用在函數中返回一個值;這一部分可以寫也可以不寫。
  • 由{ }包圍的部分稱為函數體,調用一個函數,實際上就是執行函數體中的代碼。

二、函數定義的簡化寫法

函數定義時也可以不寫 function 關鍵字:

name() {statements[return value] }

如果寫了 function 關鍵字,也可以省略函數名后面的小括號:

function name {statements[return value] }

三、函數調用

調用 Shell 函數時可以給它傳遞參數,也可以不傳遞。如果不傳遞參數,直接給出函數名字即可:

name

如果傳遞參數,那么多個參數之間以空格分隔:

name param1 param2 param3

不管是哪種形式,函數名字后面都不需要帶括號。

和其它編程語言不同的是,Shell 函數在定義時不能指明參數,但是在調用時卻可以傳遞參數,并且給它傳遞什么參數它就接收什么參數。

Shell 也不限制定義和調用的順序,你可以將定義放在調用的前面,也可以反過來,將定義放在調用的后面。

四、范例

定義一個函數,計算所有參數的和:

#!/bin/bash function getsum(){local sum=0for n in $@do((sum+=n))donereturn $sum } getsum 10 20 55 15 #調用函數并傳遞參數 echo $?

$@表示函數的所有參數,$?表示函數的退出狀態(返回值)

五、系統函數

5.1、basename基本語法

basename [string / pathname] [suffix]

功能描述:basename命令會刪掉所有的前綴包括最后一個(‘/’)字符,然后將字符串顯示出來。

選項:

suffix為后綴,如果suffix被指定了,basename會將pathname或string中的suffix去掉。

5.2、dirname基本語法

dirname #文件絕對路徑

功能描述:從給定的包含絕對路徑的文件名中去除文件名(非目錄的部分),然后返回剩下的路徑(目錄的部分)

總結

以上是生活随笔為你收集整理的Shell脚本——函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。