Linux下Shell的for循环语句
第一类:数字性循环
#!/bin/bash for((i=1;i<=10;i++)); do echo $(expr $i \* 3 + 1); done #!/bin/bash for i in $(seq 1 10) do echo $(expr $i \* 3 + 1); done #!/bin/bash for i in {1..10} do echo $(expr $i \* 3 + 1); done #!/bin/bash awk 'BEGIN{for(i=1; i<=10; i++) print i*3+1}'
第二类:字符性循环
#!/bin/bash for i in `ls`; do echo $i is file name\! ; done #!/bin/bash for i in $* ; do echo $i is input argument\! ; done #!/bin/bash for i in f1 f2 f3 ; do echo $i is an item of a list; done #!/bin/bash list="rootfs usr data data2" for i in $list; do echo $i is an item of a list; done
第三类:路径查找
#!/bin/bash for file in /proc/*; do echo $file is file path \! ; done #!/bin/bash for file in $(ls *.sh) do echo $file is file path \! ; done
总结:
现在一般都使用for in结构,for in结构后面可以使用函数来构造范围,比如 $()、`` 这些,里面写一些查找的语法,比如ls test*,那么遍历之后就是输出文件名了。
- 分类 系统运维
- 标签 bash