$*和$@之間區別程式碼分析
#!/bin/bash
set 'apple pie' pears peaches
for i in $* /*單引號被去掉,迴圈單個字元輸出*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-1
apple
pie
pears
peaches
--------------------------------------------------------------
#!/bin/bash
set 'apple pie' pears peaches
for i in "$*" /*單引號被去掉,但當作字串一次輸出*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-2
apple pie pears peaches
[root@luozhonghua Ex_14.02-14.31]#
-----------------------------------------------------------------
#!/bin/bash
set 'apple pie' pears peaches
for i in $@ /*單引號被去掉,迴圈單個字元輸出*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-3
apple
pie
pears
peaches
-----------------------------------------------------------------
#!/bin/bash
set 'apple pie' pears peaches
for i in "$@" /*每個位置參數都將當成一個加引號的字串:"apple pie","pears ","peaches"*/
do echo $i
done
[root@luozhonghua Ex_14.02-14.31]# sh 14-14-4
apple pie
pears
peaches