shell脚本中for、while和do的使用以及区别
2014-03-07 16:00
267 查看
当使用for循环或while循环时,有时候想在循环外面取到数据,这时候就要对循环进行处理,不是所有方式都支持循环外读取数据
假设我们取filename中的数据,使用循环的方式读取
1.cat $filename | while read line
do
[statement]
done
此种方式,在循环外面是取不到do里面的数据的,因为使用“ | ”处理,将循环处理放置在管道中执行,当循环执行完,即done时,管道关闭,缓存数据清空,赋给变量的值也被清空,因为得不到循环内部的值。
2. for line in `cat $filename`
do
[statement]
done
此种方法能在循环外面取到需要的数据,但是for循环读取文件时不是按行读的,是以空格为分割按照域读取的,如果需要按行读取,尽量避免使用这种方式
3.while read line
do
[statement]
done < $fileName
此种方法比较好,能够有效避开管道带来的不便,也能按行进行读取。
假设我们取filename中的数据,使用循环的方式读取
1.cat $filename | while read line
do
[statement]
done
此种方式,在循环外面是取不到do里面的数据的,因为使用“ | ”处理,将循环处理放置在管道中执行,当循环执行完,即done时,管道关闭,缓存数据清空,赋给变量的值也被清空,因为得不到循环内部的值。
2. for line in `cat $filename`
do
[statement]
done
此种方法能在循环外面取到需要的数据,但是for循环读取文件时不是按行读的,是以空格为分割按照域读取的,如果需要按行读取,尽量避免使用这种方式
3.while read line
do
[statement]
done < $fileName
此种方法比较好,能够有效避开管道带来的不便,也能按行进行读取。
相关文章推荐
- shell脚本下的教你如果运用for,while,unti循环,以及区别l
- C# 循环结构while,do-while和for的区别以及跳转语句
- shell脚本执行命令 . 和sh 和 source 和 ./ 的使用以及区别
- 使用范围for语句和while循环以及传统for的区别
- 【Java学习笔记之六】java三种循环(for,while,do......while)的使用方法及区别
- Shell 脚本之循环语句(for,while,until)以及case,select,break,continue实例详解
- PHP 不用求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)
- tar ,cpio打包解压. shell脚本for,while,until循环. rpm包管理,select循环菜单,函数function,yum
- 求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)
- 使用交互式shell脚本实现对DNS服务的管理以及启动
- 使用for、if语句添加用户的一个shell脚本
- shell 脚本之if、for、while语句
- while和for的使用区别
- Java基础知识-循环语句的使用介绍(for、while、do-while)
- JS中continue在while循环、do-while循环以及for循环中的用法
- shell脚本编程之for语句、if语句使用介绍
- 批量添加用户帐号(for do脚本命令的使用例子)
- 题目:求1+2+…+n, 要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句
- shell脚本中使用while存在隐患
- for和while的区别和使用中的优化