tft每日頭條

 > 生活

 > linux shell命令函數

linux shell命令函數

生活 更新时间:2025-03-02 00:20:18
概述

今天主要介紹下shell腳本中shift的一些用法,這個命令還是相對比較少見的。


一、shift介紹

shift命令用于對參數的移動(左移),通常用于在不知道傳入參數個數的情況下依次遍曆每個參數然後進行相應處理(常見于Linux中各種程序的啟動腳本)。

簡而言之,shift命令表示參數向左偏移,後面可跟數字(數字大小在參數個數範圍内)


二、實驗

1、依次讀取輸入的參數并打印參數個數:

#!/bin/bash while [ $# != 0 ];do echo "第一個參數為:$1,參數個數為:$#" shift done

linux shell命令函數(shell腳本中shift的用法及實驗說明)1

輸出結果:

./run.sh a b c d e f

linux shell命令函數(shell腳本中shift的用法及實驗說明)2

從上可知 shift(shift 1) 命令每執行一次,變量的個數($#)減一

(之前的$1變量被銷毀,之後的$2就變成了$1),而變量值提前一位。

同理,shift n後,前n位參數都會被銷毀。


2、測試shift n

#!/bin/bash echo "參數個數為:$#,其中:" for i in $(seq 1 $#) do eval j=\$$i echo "第$i個參數($"$i"):$j" done shift 3 echo "執行shift 3操作後:" echo "參數個數為:$#,其中:" for i in $(seq 1 $#) do #通過eval把i變量的值($i)作為變量j的名字 eval j=\$$i echo "第$i個參數($"$i"):$j" done

linux shell命令函數(shell腳本中shift的用法及實驗說明)3

輸出結果:

./shift.sh a b c d e f

linux shell命令函數(shell腳本中shift的用法及實驗說明)4


後面會分享更多devops和DBA方面内容,感興趣的朋友可以關注下~

linux shell命令函數(shell腳本中shift的用法及實驗說明)5

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved