Shell中while循环的done 后接一个重定向<
来源:互联网 发布:车r角电脑编程 编辑:程序博客网 时间:2024/06/10 08:59
读文件的方法:
第一步: 将文件的内容通过管道(|)或重定向(<)的方式传给while
第二步: while中调用read将文件内容一行一行的读出来,并付值给read后跟随的变量。变量中就保存了当前行中的内容。
例如读取文件/sites/linuxpig.com.txt
1)管道的方式:
cat /sites/linuxpig.com.txt |while read LINE do echo $LINE done当然也可以将cat /sites/linuxpig.com.txt 写成一些复杂一些的,比如:示例1:find -type f -name "*.txt" -exec cat |while read LINE do echo $LINE done可以将当前目录所有以 .txt 结尾的文件读出示例2:grep -r "linuxpig.com" ./ | awk -F":" '{print $1}' | cat |while read LINE do echo $LINE done可以将含有 "linuxpig.com" 字符串的所有文件打开并读取。。示例没有实际测试,如果使用请先测试。。。。。:-)
2)重定向的方式:
2.1 利用重定向符<
while read LINE do echo $LINE done < /sites/linuxpig.com.txt
2.2 利用文件描述符(0~9)和重定向符 <
exec 3<&0 #先将文件描述符0复制到文件描述符3,也就是给文件描述符0做个备份 exec 0</sites/linuxpig.com.txt #读文件到文件描述符0 while read LINE # 此变量是读来自stdin(即描述符0)的数据 do echo $LINE done exec 0<&3 #将文件描述符3复制给文件描述符0(恢复0从键盘读入)
0 0
- Shell中while循环的done 后接一个重定向<
- 一个Shell重定向的笔记
- 编写一个支持重定向的shell
- shell的while循环
- 如何在一个shell程序中取消重定向
- 【每天一个Linux命令】02. Linux中shell数据重定向(输入重定向与输出重定向)
- shell中while read line do done只读取一行的问题
- shell中while循环案例
- shell 中for、while循环
- Shell中输入输出重定向
- shell中输出重定向
- 一个死循环程序无法重定向的问题?linux
- while循环重定向只能读取第一行
- shell里的while循环
- shell的重定向例子
- shell中流的重定向
- shell的输入输出重定向
- 在shell中使用while循环的例子
- 一周总结
- java:xxx cannot be resolved to a type
- 总结iOS App开发中控制屏幕旋转的几种方式
- 第一次写博客
- PHP 加载一次页面时, 浏览器请求多次, 导致出错
- Shell中while循环的done 后接一个重定向<
- 一个小脚本----各种编译命令合入到同一个脚本
- wampserver安装完之后图标一直显示红色解决方法
- 输出数字2016-10-31 15:39:58.188是Timestamp类型 ,sql拼装
- unity3D游戏开发十七之NGUI四
- 异步加载和延迟加载
- 命令行生成vue的框架
- PMP笔记:Line Manager与Functional Manager
- liunx笔记