[英]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.