shell shell指令碼實戰 for迴圈

2021-10-08 23:47:46 字數 2776 閱讀 4058

總結前言

迴圈語句常用於重複執行一條命令或一組命令等,直到達到結束條件後,則終止執行。在shell中常見的迴圈命令有while、until、for和select等

今天我們來**第乙個迴圈語句,for迴圈。

for迴圈介紹

for迴圈語句與while迴圈語句類似,但for迴圈語句主要用於有限次的迴圈場景,while主要無限次迴圈的場景,如守護程序。

for迴圈的語法分析

1.第一種格式

for  變數  in  列表

do 操作

done

2,.第二種格式

for

((初始化表示式; 條件表示式; 更新迴圈變數表示式))

do 迴圈語句

for迴圈應用舉例

1. 從命令中取值

[root@ecs-c13b for]

# cat passwd ### 建立好的密碼檔案

zhangsan 12345678

lisi 123456789

wuwang 123

wangermazi 123456

[root@ecs-c13b for]

# cat for1.sh ### 寫好的指令碼

#!/bin/bash

for i in

`cat /root/for/passwd`

doecho

"$i"

done

[root@ecs-c13b for]

# bash for1.sh ### 執行指令碼以及執行後的效果

zhangsan

12345678

lisi

123456789

wuwang

123wangermazi

123456

2. 輸出從1到10

方法一:

[root@ecs-c13b for]

# cat for2.sh

#!/bin/bash

for i in

$(seq 1 10)

doecho

$idone

方法二:

[root@ecs-c13b for]

# cat for3.sh

#!/bin/bash

for(( i=

1; i<=

10; i++

))do

echo

$idone

方法三:

[root@ecs-c13b for]

# cat for2.sh

#!/bin/bash

for i in

doecho

$idone

3. 批量使用者處理

建立10個使用者

[root@ecs-c13b for]

# cat for3.sh

#!/bin/bash

for(( i=

1; i<=

10; i++

))do

echo

"正在建立第$i個使用者"

useradd user$i

done

4. ping命令最經典的指令碼

判斷ip的是否可用 使用ping命令進行判斷

[root@ecs-c13b for]

# cat for4.sh

#!/bin/bash

for i in

doping -c1 -i0.2 -w1 192.168.1.$i

if(($?==0

));then

echo

"192.168.1.$i is up"

else

echo

"192.168.1.$i is down"

fidone

5. 批量重新命名檔案
[root@ecs-c13b for]

# cat for5.sh

#!/bin/ bash

#檔名: rename. sh

#用途: 重新命名 .jpg 和 .png 檔案

## 使用find查詢png和jpg的檔案 -o 指定多個-iname選項

donew=image-$count.$ ##使用##和mv將查詢到的檔案重新命名

echo

"renaming $img to $new"

mv"$img"

"$new"

let count++ ## 生成 image-1 image-2的格式

done

總結

for迴圈是工作中用到的最多的工具了,一定要多加練習。

shell shell指令碼實戰 awk使用案例

4.檢查伺服器是否受到ddos攻擊的指令碼 總結1.使用nr行號來定位提取ip root ecs c13b awk ifconfig eth0 awk f nr 2 192.168.0.1922.去除首行 root ecs c13b awk route n kernel ip routing tab...

Shell Shell指令碼執行

shell指令碼執行的方法有一下幾種 一.shellname.sh 二source shellname.sh 三chmod x shellname.sh shellname.sh 四sh shellname.sh區別和相同點 他們的相同點是都可以成功執行乙個shell指令碼。而不同點有 第一種方法 ...

Shell shell指令碼中的空格

1.定義變數時,號的兩邊不可以留空格.eg gender femal right gender femal wrong gender femal wrong gender test right 左邊是命令的話 號的右邊有空格是正確的 左邊不能有空格 gender test wrong 等號 左邊必須...