簡體   English   中英

我如何將參數發送到bash腳本

[英]How do i send a argument to a bash script

我有一個bash腳本,我想將結果打印出來或只運行腳本而不打印結果(一個檢查操作系統類型(Linux,Ubuntu,Debian和其他操作系統)的腳本。腳本P(僅作為示例))我希望它在屏幕上顯示信息。

在這里抄寫... shootProfile

#echo "OS: $OS"
#echo "DIST: $DIST"
#echo "PSUEDONAME: $PSUEDONAME"
#echo "REV: $REV"
#echo "DistroBasedOn: $DistroBasedOn"
#echo "KERNEL: $KERNEL"
#echo "MACH: $MACH"
#echo "========"

...然后在這里

因此,如果我發送./script P,則#echo應該只是echo ..或類似的東西來將輸出輸出到屏幕。 我現在感覺像個菜鳥:/

您可以通過如下調用來發送:

$ ./myscript.sh "parameter"

然后從這樣的腳本中選擇它:

#!/bin/sh
echo "This is the first parameter: $1"

此外,您可以使用一些條件:

if test "$1" = "P"
then
    echo "You said P"
fi

我相信您正在尋找類似的東西:

for arg in "$@" ; do
   case "$arg" in
      P|p) echo "PSEUDONAME: $PSEUDONAME" ;;
      O|o) echo "OS: $OS"                 ;;
      *) echo "I did not implement the recognition of : ${arg}"
         echo "Please correct the invocation of the script, or the script itself"
         echo "I STOP HERE."
         exit 1
         ;;
    esac
done

這將允許您在腳本名稱后指定幾個命令,並且將全部處理它們(或者,如果您忘記了其中一個的必要識別,則將輸出一條消息,然后退出而不是繼續處於“怪異狀態”)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM