脚本学习2-------for

1280阅读 0评论2013-06-06 wuyaalan
分类:LINUX

上一篇学习了如何使用if-then-else进行选择的脚本。这次使用for命令。
for命令的基本格式为:
for  var  in list
do
    commands
done
其中var为变量,list为要循环的每项值,commands表示在do和done之间可以使用多个命令。
现在给个简单的例子:
1 #!/bin/bash
  2 #how to use for command
  3 for var in yu la a ha
  4 do
  5         echo "we can read var is: $var"
  6 done

  其结果就是有序的将yu 、la、a、ha输出,for命令是以空格来区分每项的值。那么如果要输出的值刚好是一个字符串或者出现特殊字符呢?
对于出现字符串可以用“ ”将字符串括起来,特殊字符的处理是使用转意字符\进行转意。
如下:
     1 #!/bin/bash
  2 #how to use for command
  3
  4 for city in xi\`an "bei jing" "shanghai"
  5 do
  6         echo "the  city which i love is : $city"
  7 done


我们页可以结合之前的if-then-else结合for命令实现一些循环操作。
 1 #!/bin/bash
  2 #how to use for command
  3
  4 for file in /home/wuyaalan/desktop/*  /mnt
  5 do
  6         if [ -d "$file" ]
  7         then
  8                 echo "$file is a directory"
  9         elif [ -f "$file" ]
 10         then
 11                 echo "$file is a normal file"
 12         fi
 13
 14 done

结果。


讲了这么多似乎上面说的和我们习惯的C里面的for循环不一样,那么shell支持类似C的for格式吗,很幸运,shell提供了类似的格式。for(( var;condition;iteration process )).还是一样注意括号两边的空格。
  1 #!/bin/bash
  2 #how to use for command
  3
  4 for (( i=0;i <= 5;i++ ))
  5 do
  6         echo "the result is $i"
  7
  8 done


























上一篇:程序员技术练级攻略
下一篇:用户输入操作和数据的显示