对循环如何在shell脚本中使用

  介绍

这期内容当中小编将会给大家带来有关的循环如何在shell脚本中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

<强>为命令:

我的各种用法:

<李>

我在file1 file2”“file3”

<李>

我在/boot/*

<李>

/etc/*.的我李参看

<李>

我的美元(seq - w 10)——》等宽的01-10

<李>

我在{1…10}

<李>

我的美元(ls)

<李>

我在$ (& lt;李文件)

<李>

我在“$ @”——》取所有位置参数,可简写为我

注意:bash shell支持C式循环

# !/bin/bash   j=$ 1   for  ((i=1;, i<=j;,我+ +))   做   touch 文件$小姐:,,,echo  file 美元小姐:is 好吧   做 <李>

$ @:所有位置变量的内容

<李>

$ #:位置变量的个数

<李>

0美元:文件名

<李>

$ *:所有位置变量的内容

编写脚本应该注意的事项:

<李>

开头指定使用什么壳,例如:bash, ksh, csh等

<李>

脚本功能描述,使用方法,作者,版,本日期等

<李>

变量名,函数名要有实际意义,函数名以动名词形式,第二个单词首字母要大写。例如:updateConfig ()

<李>

缩进统一用4个空格,不用标签

<李>

取变量值使用大括号,如$ {varname}

<李>

删除文件时,如果路径有变量的,要判断变量有值,如rm - f $ {abc}/*如果变量abc没有值,则会把根目录下的文件删除

<李>

脚本中尽量不要使用cd变换目录

<李>

函数中也要有功能描述,使用依法,版,本日期等

<李>

函数的功能要单一,不要太复杂

<李>

$()比“更好

<李>

尽量不要使用多层如果语句,而应该以例语句替代

<李>

如果需要执行确定次数的循环,应该为语用句替代而语句

<李>

输入的参数要有正确性判断

<李>

多加注释,方便自己或他人阅读。

练习1:编写脚本清空所有arp缓存记录:

# !/bin/bash   for 小姐:美元拷贝(arp  |, tail  -n  + 2 | tr  -s  & # 39;, & # 39;, | cut  - d # 39;, & # 39;, f1)   做   arp 才能-d 我美元   完成了

练习2:产生十个随机数:
方法1:

for 小姐:{0 . . 9};拷贝do  echo 随机美元;做

方法2:

for 小姐:拷贝(seq  10)美元;do  echo 随机美元;做

练习3:倒数五秒:

# !/bin/bash   echo “准备倒数5秒:“   for 小姐:拷贝$ (seq  5, 1, 1)   做   echo 才能;-en “我美元;sleep  1   完成   echo  -e “开始“

方法2:

# !/bin/bash   echo “准备倒数5秒:“   for 小姐:拷贝$ (seq  5, 1, 1)   做   echo 才能;-en “\ b我美元;sleep  1   完成   echo  -e “\ b开始“

练习4:批量添加用户:

# !/bin/bash   for 小姐:拷贝(cat 美元/根/users.txt),,,,,》从列表文件读取文件名   做   useradd 才能;我美元   echo 才能;“123456“,|,passwd ——stdin 小姐:美元——》通过管道指定密码字串   完成了

练习:
查找出uid大于10000的用户,然后删除,必须使用的循环。

#/bin/bash   u_uid=(cat /etc/passwd  |, awk  - f:, & # 39; {print  3美元}& # 39;”)   u_name=(cat /etc/passwd  |, awk  - f:, & # 39; {print  1美元}& # 39;”)   for 小姐:“拷贝seq  $ {# u_uid [@],}”   做   if 才能;((,$ {u_uid(张)},祝辞,10000,))   然后才能   ,,,,,userdel  -r  $ {u_name(张)},,echo “$ {u_name(张)},delete  ok"   fi才能   做

方法2:用正则找出大于10000的用户:

cat /etc/passwd  |, egrep “1 [0 - 9] {4}, |, [2 - 9] {5}”

例子:根据ip地址检查网络中存活的主机ip。

循环如何在shell脚本中使用“> </p> <p>打破语句:(跳出循环)</p> <ul类= <李>

在,,直到等循环语句中,用于跳出当前所在的循环体,执行循环体后的语句

对循环如何在shell脚本中使用