for循环语法使用举例

for语句使用举例,可参考此网址http://www.cnblogs.com/chaoguo1234/p/5720949.html

使用字面常量列表作为List

#!/bin/bash
##filename:for1--constant_as_list.sh
#使用字面列表作为List
for x in centos ubuntu gentoo opensuse
do
        echo "$x"
done
#若列表项中包含空格则必须使用引号括起来
for x in Linux "Gnu Hurd" FreeBSD "Max OS X"; do echo "$x" ; done
for x in ls "df -Ph" "du -sh"
do echo "==$s==" ; eval $x ; done


关于脚本中eval的用法可见http://blog.csdn.net/w_ww_w/article/details/7075867


使用变量列表作为List

#!/bin/bash
##filename:for1--variable_as_list.sh
#使用变量作为List
i=1 ; weekdays="Mon Tue Wed Thu Fri"
for day in $weekdays ; do
        echo "Weekday $((i++)):$day"
done


使用位置参数$@ 作为List

#!/bin/bash
##filename:for3--pp_as_list.sh
#使用位置参数变量$@ 作为List, in $@ 可以省略
i=1
for day ; do
        echo -n "Positional parameter $((i++)):day"
        case $day in
                [Mm]on|[Tt]ue|[Ww]ed|[Tt]hu|[Ff]ri)     echo "(weekday)" ;;
                [Ss]at|[Ss]un)                          echo "(WEEKEND)" ;;
                *)                                      echo "(Invalid weekday)"  ;;
        esac
done



使用文件名作为List

#!/bin/bash
#filename:for4--filename_as_list.sh
#功能:成批修改文件扩展名
#将当前目录下所有以($1)为后缀的文件改为以($2)为后缀的文件
if [ $# -eq 2 ]; then
    for fn in *.$1 ; do
            mv "$fn" "${fn%${1}}${2}"    #或 mv "$fn" "${fn/%.${1}/.${2}}"
    done
    else
            echo "Usage: $0 <SUFFIX1> <SUFFIX2>"
            echo "Exmaple: $0 txt doc"
    fi
~ 


使用命令的值执行结果作为List

#!/bin/bash
##filename:for5--command_output_as_list.sh
#使用命令的执行结果作为List
i=1
for username in `awk -F":" '{print $1}' /etc/passwd`
do  echo "Username $((i++)):$username"  ; done

for line in $(egrep -v "^$|^#" files.txt) ; do  echo "$line"  ; done

for suffix in $(seq 131 132) ; do ping -c 1 "192.168.219.${suffix}"  ; done


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值