zoukankan      html  css  js  c++  java
  • 如何使用read命令读取文件的每一行

    下面是一个简单的例子程序,展示如何用read命令读取文件的每一行,并且把它输出到控制台。gMULinux联盟
    如果没有输入文件,那么自身的shell文件将被使用gMULinux联盟
    #!/bin/shgMULinux联盟
    gMULinux联盟
    if [ $# -gt 1  ]; thengMULinux联盟
        echo "Usage: $0 [FileName]"gMULinux联盟
        exit 1gMULinux联盟
    elif [ $# -eq 1 ]; thengMULinux联盟
        MY_FILE=$1gMULinux联盟
    elsegMULinux联盟
        MY_FILE=$0gMULinux联盟
    figMULinux联盟
    gMULinux联盟
    if [ ! -f $MY_FILE ]; thengMULinux联盟
        echo "$MY_FILE does not exist!"gMULinux联盟
        exit 2gMULinux联盟
    figMULinux联盟
    gMULinux联盟
    MY_LINE_NO=1gMULinux联盟
    while read MY_LINEgMULinux联盟
    dogMULinux联盟
        printf "%5.5d: $MY_LINE/n" $MY_LINE_NOgMULinux联盟
        MY_LINE_NO=$((MY_LINE_NO+1))gMULinux联盟
    done < $MY_FILEgMULinux联盟
    gMULinux联盟
    gMULinux联盟
    gMULinux联盟
    ---------------------------------------------gMULinux联盟
    虽然这个东西看起来很简单,但是很多人有的时候会忘记它的正确使用gMULinux联盟
    while read MY_LINE < $MY_FILE gMULinux联盟
    do gMULinux联盟
    printf "%5.5d: $MY_LINE/n" $MY_LINE_NO gMULinux联盟
    MY_LINE_NO=$((MY_LINE_NO+1)) gMULinux联盟
    done gMULinux联盟
    这样的结果很显然,每次都读$MY_FILE的第一行,并且是一个死循环,永远不会退出。
    gMULinux联盟
    Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
  • 相关阅读:
    默比乌斯函数
    勒让德符号相关
    微积分入门("SX"T版)
    分治法求2n个数的中位数
    SSM框架学习之高并发秒杀业务--笔记1-- 项目的创建和依赖
    10月9日Android学习笔记:活动与服务之间的通信
    高精度加法
    Windows环境下多线程编程原理与应用读书笔记(4)————线程间通信概述
    郁闷
    素数链
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6470613.html
Copyright © 2011-2022 走看看