Re: [問題] 請問$ARGV的意義或用法

看板Perl作者 (快來約我聊天吧~)時間14年前 (2009/10/13 20:18), 編輯推噓2(202)
留言4則, 3人參與, 最新討論串1/1
※ 引述《f91jacky (愛撫久)》之銘言: : 小弟我看網路上有 $ARGV[0] 的都看不太懂 : 所以想 請教各位 $ARGV[0] 、$ARGV[1] .. 為何涵義? : 或是 有沒有例子可以舉一下 : 謝謝! $ARGV 這稱之為命令列參數 以往在寫程式時我們多採用互動式輸入 ex. kg轉pb #!/bin/perl print "input KG:"; chomp ($kg=<STDIN>); print $kg." KG = ".($kg/0.454)." pb\n"; 所執行的結果為 #XXX@host> kg2pb.pl input KG: 10 10 KG = 22.0264317180617 pb 現在要是改採$ARGV的寫法 #!/bin/perl print $ARGV[0]." KG = ".($ARGV[0]/0.454)." pb\n"; 所執行的結果為 #XXX@host>kg2pb.pl 10 10 KG = 22.0264317180617 pb 這時$ARGV[0]就是接受到命令列參數10 若你打kg2pb.pl 10 20 30 那這樣$ARGV[0] = 10; $ARGV[1] = 20; .....以此類推 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.53.115

10/13 21:41, , 1F
挖屋~謝謝這位大大
10/13 21:41, 1F

10/14 11:23, , 2F
可以順便學一下 getopt 怎麼用...
10/14 11:23, 2F

10/18 23:54, , 3F
可看看 GetOpt::Long
10/18 23:54, 3F

10/18 23:54, , 4F
不過我比較常只寫 shift , 他會自動指向 @ARGV
10/18 23:54, 4F
文章代碼(AID): #1Ar70MNv (Perl)