linux shell 按行循环读入文件方法

http://blog.csdn.net/hittata/article/details/7042779

  1. #/bin/bash

  2. printf "*************************************\n"

  3. echo " cat file whiel read line"  
  4. cat test.txt |while read line  
  5. do  
  6. echo $line;  
  7. done  
  8. printf "*************************************\n"

  9. echo "while read line <file"  
  10. while read line  
  11. do  
  12. echo $line;  
  13. done <test.txt
  14. printf "*************************************\n"

  15. echo "for line in cat test.txt"  
  16. SAVEIFS=$IFS  
  17. IFS=$(echo -en "\n")  
  18. for line in $(cat test.txt)  
  19. do  
  20. echo  $line;  
  21. done  
  22. IFS=$SAVEIFS

注意:for line in $(cat test.txt)   当文件中有空格或者tab 时,一定要设置一下IFS变量。

linux shell 按行循环读入文件方法

时间: 2024-11-09 20:19:14

linux shell 按行循环读入文件方法的相关文章

Linux shell逐行读取文件的方法

Linux shell逐行读取文件的方法 在Linux中有很多方法逐行读取一个文件的方法,其中最常用的就是下面的脚本里的方法,而且是效率最高,使用最多的方法.为了给大家一个直观的感受,我们将通过生成一个大的文件的方式来检验各种方法的执行效率. 方法1:while循环中执行效率最高,最常用的方法. function while_read_LINE_bottm(){ While read LINE doecho $LINEdone  < $FILENAME}         注释:我习惯把这种方式叫

Mac / Linux Shell 批量重命名的方法总览

Linux Shell 批量重命名的方法总览 0.用类似 GPRename 这样的图形软件进行批量重命名 1.删除所有的 .bak 后缀: rename 's/\.bak$//' *.bak 2.把 .jpe 文件后缀修改为 .jpg: rename 's/\.jpe$/\.jpg/' *.jpe 3.把所有文件的文件名改为小写: rename 'y/A-Z/a-z/' * 4.将 abcd.jpg 重命名为 abcd_efg.jpg: for var in *.jpg; do mv "$var

linux shell的输出效果修改方法(界面颜色)

文本终端的颜色可以使用“ANSI非常规字符序列”来生成.举例: echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色,闪烁光标,输出字符“ME”,然后重新设置屏幕到缺省设置,输出字符 “COOL”.“e”是命令 echo 的一个可选项,它用于激活特殊字符的解析器.“\033”引导非常规字符序列.“m”意味着设置属性然后结束非常规字符序列,这个例子里真正有效的字符是 “44;37;5” 和“0”. 修改“44;37;5”可以生

linux shell条件与循环举例

1. if/else 语句 语法: if condition; then commands;elif condition; then commands;else commands;fi 示例:需求:脚本需要1个参数才能正确运行,而在脚本执行时,如果指定的参数个数不等于1,则shell脚本就应该打印出一个错误信息,告知用户指定的参数个数不对,然后结束脚本的执行.#!/bin/bashif [ $# -ne 1 ];then echo "Error! Arguments are not correc

Linux shell 命令行下查询外网IP

查询IP在网页上打开网址就可以显示,但是在命令行下可以安装w3m/Links/Lynx这些命令行浏览器,但是为了这个又感觉不方便,所以很多查IP网站提供了UNIX/LINUX的. 命令行查询(详细): UNIX/Linux: #curl cip.cc Windows:    >telnet cip.cc             >ftp cip.cc              命令行查询(纯ip): UNIX/Linux:    #curl ip.cip.cc 参考: http://www.c

Linux Shell基础学习——循环与条件判断

for循环 1. 注意do必须换行 for i in {1..10}  do    echo $i done 2. 注意do必须换行 for i in 1 2 3 4 5  do     echo $i done 3. 遍历命令输出的结果 for shname in `ls *.sh` do        echo $shname done 4. 类似高级语言的for循环 for((i=1;i<100;i++)) do         echo $i done for循环就到这里,有这几个就够用

Linux shell if条件语句使用方法

shell if -b    当file存在并且是块文件时返回真-c    当file存在并且是字符文件时返回真-d    当pathname存在并且是一个目录时返回真-e    当pathname指定的文件或目录存在时返回真-f     当file存在并且是正规文件时返回真-g     当由pathname指定的文件或目录存在并且设置了SGID位时返回为真-h     当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效-k     当由pathname指定的文件或目录存在并且设

linux shell命令行下操作mysql 删除mysql指定数据库下的所有表--亲测成功百分百测试通过--绝对可靠

1,在shell提示符下查看mysql指定数据库下的表等数据 2.批量删除mysql下指定数据库下的所有表,Ruiy完成绝对测试---通过Pass for tb in `echo "use se;show tables" | mysql -p321`;do mysql -e "drop table se.$tb" -p321;done 再进一步的完整语句为,过滤掉那个Tables_in_DBName for tb in `echo "use se;show

QT下实现对Linux Shell调用的几种方法

使用QProcess QThread ============================================ #include <QProcess>int main(){QProcess::execute("ls");return 0;} ============================================   QProcess *poc = new QProcess; poc-> start( "ping 222.20