shell指令碼中for while用法

2021-10-23 12:04:28 字數 1079 閱讀 9722

1、for迴圈

for迴圈的運作方式,是講序列的元素意義取出,依序放入指定的變數中,然後重複執行含括的命令區域(在do和done 之間),直到所有元素取盡為止。

for的語法結構如下:

for 變數 in 序列

do 執行命令

done

例1:

用for迴圈在家目錄下建立a1-a10,然後在a1-a10建立b1-b10的目錄

#!/bin/bash

for a in

do mkdir /datas/a$a

cd /datas/a$a

for b in

domkdir b$b

done

done

#!/bin/bash

for k in $( seq 1 10 )

do mkdir /home/a$k

cd /home/a$

for l in $( seq 1 10 )

domkdir b$

cd /home/a$k

done

cd ..

done

例2

列出var目錄下各子目錄占用磁碟空間的大小。

#!/bin/bash

dir="/var"

cd $dir

for k in $(ls $dir)

do [ -d $k ] && du -sh $k

done

2、while迴圈

while迴圈的語法:

while 條件測試

do 執行命令

done

#!/bin/bash

declare -i i=1

declare -i sum=0

while ((i<=10))

do let sum+=i

let ++i

done

echo $sum

shell中基礎指令碼

shell 指令碼 shell script 是一種為 shell 編寫的指令碼程式。業界所說的 shell 通常都是指 shell 指令碼,但讀者朋友要知道,shell 和 shell script 是兩個不同的概念。由於習慣的原因,簡潔起見,本文出現的 shell程式設計 都是指 shell 指...

shell指令碼中 2 1

在指令碼開發中經常能看到 2 1 比如 2 root cd x php index.php task testone dev null 2 1對於 1 更準確的說應該是檔案描述符 1,而1標識標準輸出,stdout。對於2 表示標準錯誤,stderr。2 1 的意思就是將標準錯誤重定向到標準輸出。這...

shell指令碼中 set ex

剛剛學會了乙個很實用的shell命令set ex,在這裡分享一下。set e 先說說set e,這個引數的含義是,當命令發生錯誤的時候,停止指令碼的執行。通常來說,我們會習慣於使用 來實現這樣的功能,比如 echo 1 rm non existent file echo 2但是,寫成一行呢,可讀性有...