1. 程式人生 > >shell $*與$@的區別

shell $*與$@的區別

shell src inf 圖片 對比 技術 img TP span

 1 #! /bin/bash
 2 test() {
 3         echo "未加引號,二者相同"
 4         echo $*
 5         echo $@
 6         echo "加入引號後對比"
 7         for N in "$*"
 8         do
 9            echo $N
10         done
11 
12         echo "----------"
13         for N in "$@"
14         do
15            echo $N
16         done
17 } 18 test 12 123 3424 546

技術分享圖片

可以看到不加引號時,二者都是返回傳入的參數,但加了引號後,此時$*把參數作為一個字符串整體(單字符串)返回,$@把每個參數作為一個字符串返回

shell $*與$@的區別