shell中的shift左移參數命令

  shift命令用於對參數的向左移動,一般用於在不知道傳入參數個數的狀況下依次遍歷每一個參數,而後進行相應的處理(常見與Linux中各類程序的啓動腳本)。在掃描處理腳本程序的參數時,常常要用到shift命令。vim

  shift命令每執行一次,參數序列順次左移一個位置,$#的值減1,用於分別處理每一個參數,移出去的參數再也不可用。bash

  注意:$#表示腳本後跟隨的參數總的個數,$n能夠獲取腳本後跟隨的第n個參數的值。spa

  實例:加法計算blog

[root@youxi1 ~]# vim a.sh
#!/bin/bash
if [ $# -le 0 ] ; then
  echo "沒有足夠的參數"
  exit
fi
sum=0
while [ $# -gt 0 ] ; do
  sum=$[$sum+$1]
  shift
done
echo result is $sum
[root@youxi1 ~]# sh a.sh
沒有足夠的參數
[root@youxi1 ~]# sh a.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 
result is 120
相關文章
相關標籤/搜索