Shell指令碼(九) 函式

2021-09-26 06:22:47 字數 1346 閱讀 4611

1.basename基本語法

basename [string / pathname] [suffix]        (功能描述:basename命令會刪掉所有的字首包括最後乙個(『/』)字元,然後將字串顯示出來。

選項:suffix為字尾,如果suffix被指定了,basename會將pathname或string中的suffix去掉。

2.案例實操

(1)擷取該/home/atguigu/banzhang.txt路徑的檔名稱

[atguigu@hadoop101 datas]$ basename /home/atguigu/banzhang.txt

banzhang.txt

[atguigu@hadoop101 datas]$ basename /home/atguigu/banzhang.txt .txt

banzhang

3.    dirname基本語法

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

4.案例實操

(1)獲取banzhang.txt檔案的路徑

[atguigu@hadoop101 ~]$ dirname /home/atguigu/banzhang.txt

/home/atguigu

1.基本語法

[ function ] funname[()]

funname

2.經驗技巧

(1)必須在呼叫函式地方之前,先宣告函式,shell指令碼是逐行執行。不會像其它語言一樣先編譯。

(2)函式返回值,只能通過$?系統變數獲得,可以顯示加:return返回,如果不加,將以最後一條命令執行結果,作為返回值。return後跟數值n(0-255)

3.案例實操

(1)計算兩個輸入引數的和

[atguigu@hadoop101 datas]$ touch fun.sh

[atguigu@hadoop101 datas]$ vim fun.sh

#!/bin/bash

function sum()

read -p "please input the number1: " n1;

read -p "please input the number2: " n2;

sum $n1 $n2;

[atguigu@hadoop101 datas]$ chmod 777 fun.sh

[atguigu@hadoop101 datas]$ ./fun.sh

please input the number1: 2

please input the number2: 5

7

Shell 指令碼學習筆記九 Shell函式

函式的定義格式 function funname 1 可以帶function fun 定義,也可以直接fun 定義,不帶任何引數 2 引數返回,可以顯示加 return 返回,如果不加,將以最後一條命令執行結果,作為返回值。return後跟數值n 1 沒有 return 語句的函式 demofun ...

linux筆記九 shell 指令碼

shell script 是利用 shell 的功能所寫的乙個 程式 program 這個程式是使用純文本文 件,將一些 shell 的語法與指令 含外部指令 寫在裡面,搭配正規表示法 管線命令與資料流重 導向等功能,以達到我們所想要的處理目的。利用test指令的測試功能 使用判斷符號 中括號的使用...

SHELL指令碼函式

shll作為指令碼語言,也有自己的函式。但是他有許多與其他語言不同的特點 在這裡,定義了乙個函式,有2個引數,第乙個 陣列,第二個 單個值。這個函式的作用是判斷第二個引數的值是否在第乙個引數 陣列 裡面。bin sh 定義函式 fun function contain do ta array ech...