for循環
shell腳本中for循環可以自動化處理一些事物,在本博客中,作者將會結合幾個示例講解for循環的使用方法
for循環標準結構
for 語句
do
執行語句
done
示例
- 利用for循環實現1-15數字累加
#!/bin/bash
j=0
for i in `seq 1 15`
do
j=`expr $i + $j`
done
echo $j
其中代碼中for i in `seq 1 15` 中需要注意添加
··也就是鍵盤上面的波浪號鍵。其作用爲代表引號內部爲shell命令。表示兩個數相加
- 查找指定目錄下所有的log文件,並壓縮成文件包
#!/bin/bash
for i in `find . -maxdepth 1 -name "*.log"`
do
echo "i is $i"
tar -czvf $i.tgz $i
done
echo "dones"
其中for i in find . -maxdepth 1 -name "*.log"
表示在當前目錄下尋找所有以.log結尾的文件; tar -czvf $i.tgz $i表示對當前文件壓縮,所以就實現了對當前目錄下所有以log結尾文件順序壓縮,其中代碼執行結果如圖