欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Shell 參數(shù)傳遞的使用方法

 更新時間:2023年05月09日 09:26:23   作者:向陽逐夢  
本文主要介紹了Shell 參數(shù)傳遞的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

我們可以在執(zhí)行 Shell 腳本時,向腳本傳遞參數(shù),腳本內(nèi)獲取參數(shù)的格式為: $nn 代表一個數(shù)字,1 為執(zhí)行腳本的第一個參數(shù),2 為執(zhí)行腳本的第二個參數(shù),以此類推……

具體實例:

以下實例我們向腳本傳遞三個參數(shù),并分別輸出,其中 $0 為執(zhí)行的文件名(包含文件路徑):

echo "Shell 傳遞參數(shù)實例!";
echo "執(zhí)行的文件名:$0";
echo "第一個參數(shù)為:$1";
echo "第二個參數(shù)為:$2";
echo "第三個參數(shù)為:$3";

為腳本設(shè)置可執(zhí)行權(quán)限,并執(zhí)行腳本,輸出結(jié)果如下所示:

$ chmod +x test.sh 
$ ./test.sh 1 2 3
Shell 傳遞參數(shù)實例!
執(zhí)行的文件名:./test.sh
第一個參數(shù)為:1
第二個參數(shù)為:2
第三個參數(shù)為:3

另外,還有幾個特殊字符用來處理參數(shù):

echo "Shell 傳遞參數(shù)實例!";
echo "第一個參數(shù)為:$1";
echo "參數(shù)個數(shù)為:$#";
echo "傳遞的參數(shù)作為一個字符串顯示:$*";

執(zhí)行腳本,輸出結(jié)果如下所示:

$ chmod +x test.sh 
$ ./test.sh 1 2 3
Shell 傳遞參數(shù)實例!
第一個參數(shù)為:1
參數(shù)個數(shù)為:3
傳遞的參數(shù)作為一個字符串顯示:1 2 3

∗與* 與 ∗與@ 區(qū)別:

  • 相同點:都是引用所有參數(shù)。
  • 不同點:只有在雙引號中體現(xiàn)出來。假設(shè)在腳本運行時寫了三個參數(shù) 1、2、3,,則 " * " 等價于 "1 2 3"(傳遞了一個參數(shù)),而 "@" 等價于 "1" "2" "3"(傳遞了三個參數(shù))。
echo "-- $* 演示 ---"
for i in "$*"; do
    echo $i
done
echo "-- $@ 演示 ---"
for i in "$@"; do
    echo $i
done

執(zhí)行腳本,輸出結(jié)果如下所示:

$ chmod +x test.sh 
$ ./test.sh 1 2 3
-- $* 演示 ---
1 2 3
-- $@ 演示 ---
1
2
3

含有空格的參數(shù),只需要在參數(shù)傳遞的時候加雙引號就可以。

#!/bin/bash 
echo "---------------with double quote ---------------"
echo "$1"
echo "$2"
echo "$3"
my_procedure() {
   echo "$1"
   echo "$2"
   echo "$3"
}
my_procedure "$@"
echo "---------------withtout double quote ---------------"
echo $1
echo $2
echo $3
my_procedure() {
   echo $1
   echo $2
   echo $3
}
my_procedure "$@"
echo "---------------withtout double quote by passing arguments---------------"
my_procedure $@

輸入:

./test.sh "a b" "c d" "e f"

輸出結(jié)果為:

---------------with double quote ---------------
a b
c d e
f g
a b
c d e
f g
---------------withtout double quote ---------------
a b
c d e
f g
a b
c d e
f g
---------------withtout double quote by passing arguments ---------------
a
b
c

前兩部分無論在函數(shù)內(nèi)外,加不加引號都一樣,但是在函數(shù)傳遞的時候要保證加引號。

到此這篇關(guān)于Shell 參數(shù)傳遞的使用方法的文章就介紹到這了,更多相關(guān)Shell 參數(shù)傳遞內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • linux命令行下使用curl命令查看自己機器的外網(wǎng)ip

    linux命令行下使用curl命令查看自己機器的外網(wǎng)ip

    Linux命令行下使用curl命令查看自己機器的外網(wǎng)ip,大家參考使用吧
    2013-12-12
  • linux系統(tǒng)下hosts文件詳解及配置

    linux系統(tǒng)下hosts文件詳解及配置

    hosts文件是Linux系統(tǒng)上一個負責(zé)ip地址與域名快速解析的文件,以ascii格式保存在/etc/目錄下。這篇文章主要介紹了linux系統(tǒng)下hosts文件詳解及配置的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • 淺談Shell中的函數(shù)

    淺談Shell中的函數(shù)

    這篇文章主要介紹了Shell中函數(shù)的相關(guān)資料,幫助大家更好的理解和使用shell,感興趣的朋友可以了解下
    2020-09-09
  • 查看linux中某個端口(port)是否被占用的方法

    查看linux中某個端口(port)是否被占用的方法

    下面小編就為大家?guī)硪黄榭磍inux中某個端口(port)是否被占用的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Linux命令之tail的使用及應(yīng)用場景介紹

    Linux命令之tail的使用及應(yīng)用場景介紹

    tail 是一條在 Linux 系統(tǒng)中常用的命令行工具,用來顯示文件的末尾內(nèi)容,tail 的功能強大且簡潔,能夠滿足多種應(yīng)用需求本文就給大家介紹一下Linux命令tail的使用及應(yīng)用場景,需要的朋友可以參考下
    2023-09-09
  • Shell腳本test命令使用總結(jié)和實例

    Shell腳本test命令使用總結(jié)和實例

    這篇文章主要介紹了Shell腳本test命令使用總結(jié)和實例,分別對數(shù)字測試、字符串測試、文件測試做了總結(jié),并給出了實際使用例子,需要的朋友可以參考下
    2014-07-07
  • Shell腳本中判斷輸入?yún)?shù)個數(shù)的方法

    Shell腳本中判斷輸入?yún)?shù)個數(shù)的方法

    這篇文章主要介紹了Shell腳本中判斷輸入?yún)?shù)個數(shù)的方法,使用內(nèi)置變量$#即可實現(xiàn)判斷輸入了多少個參數(shù),需要的朋友可以參考下
    2014-10-10
  • Linux實現(xiàn)文件定期本地備份/異地備份/刪除備份的腳本

    Linux實現(xiàn)文件定期本地備份/異地備份/刪除備份的腳本

    數(shù)據(jù)備份的意義就在于,當(dāng)受到網(wǎng)絡(luò)攻擊、入侵、電源故障或者操作失誤等事故的發(fā)生后,可以完整、快速、簡捷、可靠地恢復(fù)原有系統(tǒng)。本文為大家準(zhǔn)備了文件定期本地備份/異地備份/刪除備份的腳本,希望對你們有所幫助
    2022-10-10
  • 淺析Linux系統(tǒng)下安裝wetty和使用說明

    淺析Linux系統(tǒng)下安裝wetty和使用說明

    本篇文章主要給大家介紹linux系統(tǒng)下安裝wetty和使用說明,以及l(fā)inux tty命令學(xué)習(xí)總結(jié),感興趣的朋友跟著小編一起學(xué)習(xí)吧
    2015-10-10
  • Shell腳本實現(xiàn)自動安裝zookeeper

    Shell腳本實現(xiàn)自動安裝zookeeper

    這篇文章主要介紹了Shell腳本實現(xiàn)自動安裝zookeeper,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-01-01

最新評論