簡體   English   中英

如何將命令行參數放入Shell腳本

[英]How to put command line parameter to shell script

我有一個可執行的Shell腳本名稱project2。 以下是我的老師在該項目上給我的指示之一。

該腳本必須至少接受一個命令行參數:要放置其輸出的目錄。 如果在命令行上未提供該目錄,則腳本應使用合理的默認目錄。

您能告訴我如何使我的腳本接受命令行嗎? 我以前沒有做過這樣的事情。 任何幫助將不勝感激。 非常感謝。

對於bash ,命令行參數存儲在$1$2等中,而$#會給您計數。 此外, shift可以通過使用一個位置轉移他們所有的“左”落計數。

以下腳本是了解參數如何工作的一個很好的起點:

echo $#
while [[ $# -gt 0 ]] ; do
    echo "$1"
    shift
done

使用以下命令運行它時:

./myprog.sh hello there my name is "pax     diablo"

輸出為:

6
hello
there
my
name
is
pax     diablo

作業的基本思路是:

  • 檢查參數計數是否為零。
  • 如果為零,則將變量設置為一些有用的默認值。
  • 如果它不為零,則根據第一個參數設置該變量。
  • 做任何與該變量有關的事情。

看看Advanced Bash腳本指南的 這一部分

我建議您閱讀整個指南。

暫無
暫無

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

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