任何人都可以告訴我$*
在bash腳本中的含義是什麼?
我試圖在谷歌搜索它,但我發現只有約$0
,$1
等。
所以,如果有這個鏈接,是值得歡迎的。
謝謝!
任何人都可以告訴我$*
在bash腳本中的含義是什麼?
我試圖在谷歌搜索它,但我發現只有約$0
,$1
等。
所以,如果有這個鏈接,是值得歡迎的。
謝謝!
看到這個頁面:
http://tldp.org/LDP/abs/html/internalvariables.html#IFSEMPTY
的$ *和$ @的行爲,當$ IFS爲空取決於 +運行Bash或sh版本正在運行。 因此,在腳本中依賴這個「特徵」是不可取的。
從man
頁:
*
展開爲位置參數,從1開始。當擴展出現在雙引號內時,它擴展爲單個 字,每個參數的值由IFS特殊變量的第一個字符分隔。也就是說,「$*
」相當於 到「$1
c$2
c ...」,其中c是IFS變量值的第一個字符。如果IFS未設置,則參數將以空格分隔 。如果IFS爲空,則參數在沒有介入分隔符的情況下連接。
因此,它等價於所有的位置參數,具有稍微不同的語義,具體取決於它是否在引號中。
這是所有傳遞給腳本的參數,除了按字分開。你幾乎總是想用"[email protected]"
代替。這一切都在bash(1)
手冊頁中。
將命令行中提供的參數列表添加到腳本中。$ 0將是腳本名稱。
這是一個空格分隔的所有參數字符串。例如,如果$1
是「你好」,並且$2
是「世界」,那麼$*
是「你好世界」。 (除非$ IFS被設置;然後它是一個$ IFS分隔的字符串。)
您可以使用symbolhound搜索引擎來查找谷歌不會查找的代碼。
您所查詢的click here
如果您在與任何前綴看到$
,這意味着它的一個變量。使用變量的值。
例子:
count=100
echo $count
echo "Count Value = $count"
上面的腳本輸出:
100
Count Value = 100
儘管您所做的陳述是正確的,但問題是「什麼是$ *是什麼意思? – maninvan 2015-06-30 18:49:27
謝謝。這對我來說是非常有幫助的! – artaxerxe 2012-02-06 09:38:43