$*與$@中Shell中有什么區(qū)別-創(chuàng)新互聯(lián)

這篇文章給大家介紹$*與$@中Shell中有什么區(qū)別,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),黑河企業(yè)網(wǎng)站建設(shè),黑河品牌網(wǎng)站建設(shè),網(wǎng)站定制,黑河網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,黑河網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

當(dāng) $* 和 $@ 不被雙引號" "包圍時(shí),它們之間沒有任何區(qū)別,都是將接收到的每個(gè)參數(shù)看做一份數(shù)據(jù),彼此之間以空格來分隔。


但是當(dāng)它們被雙引號" "包含時(shí),就會有區(qū)別了:


"? " 會 將 所 有 的 參 數(shù) 從 整 體 上 看 做 一 份 數(shù) 據(jù) , 而 不 是 把 每 個(gè) 參 數(shù) 都 看 做 一 份 數(shù) 據(jù) 。 " *"會將所有的參數(shù)從整體上看做一份數(shù)據(jù),而不是把每個(gè)參數(shù)都看做一份數(shù)據(jù)。 "?"會將所有的參數(shù)從整體上看做一份數(shù)據(jù),而不是把每個(gè)參數(shù)都看做一份數(shù)據(jù)。"@"仍然將每個(gè)參數(shù)都看作一份數(shù)據(jù),彼此之間是獨(dú)立的。

比如傳遞了 5 個(gè)參數(shù),那么對于"? " 來 說 , 這 5 個(gè) 參 數(shù) 會 合 并 到 一 起 形 成 一 份 數(shù) 據(jù) , 它 們 之 間 是 無 法 分 割 的 ; 而 對 于 " *"來說,這 5 個(gè)參數(shù)會合并到一起形成一份數(shù)據(jù),它們之間是無法分割的;而對于"?"來說,這5個(gè)參數(shù)會合并到一起形成一份數(shù)據(jù),它們之間是無法分割的;而對于"@"來說,這 5 個(gè)參數(shù)是相互獨(dú)立的,它們是 5 份數(shù)據(jù)。

如果使用 echo 直接輸出"? " 和 " *"和"?"和"@"做對比,是看不出區(qū)別的;但如果使用 for 循環(huán)來逐個(gè)輸出數(shù)據(jù),立即就能看出區(qū)別來。

示例


#!/bin/bash

echo "-- \$* 演示 ---"
for i in "$*"; do
 echo $i
done

echo "-- \$@ 演示 ---"
for i in "$@"; do
 echo $i
done

執(zhí)行腳本,輸出結(jié)果如下所示:

$ chmod +x test.sh
$ ./test.sh 1 2 3
-- $* 演示 ---
1 2 3
-- $@ 演示 ---
1
2
3

關(guān)于$*與$@中Shell中有什么區(qū)別就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

網(wǎng)頁名稱:$*與$@中Shell中有什么區(qū)別-創(chuàng)新互聯(lián)
本文來源:http://muchs.cn/article44/dchdhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)外貿(mào)建站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站改版、企業(yè)網(wǎng)站制作App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作