zoukankan      html  css  js  c++  java
  • Shell按行读取文件的3种方法

    Shell按行读取文件的方法有很多,常见的三种方法如下:

    要读取的文件:

    1 [root@mini05 20180930-2]# cat file.info 
    2 111
    3 222
    4 333 444
    5 555 666

    写法一:

    复制代码
     1 [root@mini05 20180930-2]# cat read1.sh 
     2 #!/bin/bash
     3 ################ Version Info ##################
     4 # Create Date: 2018-09-29
     5 # Author:      zhang
     6 # Mail:        zhang@xxx.com
     7 # Version:     1.0
     8 # Attention:   按行读取文件
     9 ################################################
    10 
    11 # 加载环境变量
    12 . /etc/profile
    13 . ~/.bash_profile
    14 . /etc/bashrc
    15 
    16 # 脚本所在目录及脚本名称
    17 script_dir=$( cd "$( dirname "$0"  )" && pwd )
    18 script_name=$(basename ${0})
    19 
    20 exec < ${script_dir}/file.info
    21 while read line; do
    22   echo "${line}"
    23 done
    复制代码

    写法二:

    复制代码
     1 [root@mini05 20180930-2]# cat read2.sh 
     2 #!/bin/bash
     3 ################ Version Info ##################
     4 # Create Date: 2018-09-29
     5 # Author:      zhang
     6 # Mail:        zhang@xxx.com
     7 # Version:     1.0
     8 # Attention:   按行读取文件
     9 ################################################
    10 
    11 # 加载环境变量
    12 . /etc/profile
    13 . ~/.bash_profile
    14 . /etc/bashrc
    15 
    16 # 脚本所在目录及脚本名称
    17 script_dir=$( cd "$( dirname "$0"  )" && pwd )
    18 script_name=$(basename ${0})
    19 
    20 cat ${script_dir}/file.info | while read line;do
    21   echo "${line}"
    22 done
    复制代码

    写法三:

    复制代码
     1 [root@mini05 20180930-2]# cat read3.sh 
     2 #!/bin/bash
     3 ################ Version Info ##################
     4 # Create Date: 2018-09-29
     5 # Author:      
     6 # Mail:        xxx.com
     7 # Version:     1.0
     8 # Attention:   按行读取文件
     9 ################################################
    10 
    11 # 加载环境变量
    12 . /etc/profile
    13 . ~/.bash_profile
    14 . /etc/bashrc
    15 
    16 # 脚本所在目录及脚本名称
    17 script_dir=$( cd "$( dirname "$0"  )" && pwd )
    18 script_name=$(basename ${0})
    19 
    20 while read line; do
    21   echo "${line}"
    22 done < ${script_dir}/file.info
  • 相关阅读:
    Maximum Flow Exhaustion of Paths Algorithm
    ubuntu下安装java环境
    visualbox使用(二)
    vxworks一个超级奇怪的错误(parse error before `char')
    February 4th, 2018 Week 6th Sunday
    February 3rd, 2018 Week 5th Saturday
    February 2nd, 2018 Week 5th Friday
    February 1st, 2018 Week 5th Thursday
    January 31st, 2018 Week 05th Wednesday
    January 30th, 2018 Week 05th Tuesday
  • 原文地址:https://www.cnblogs.com/shetao/p/14338461.html
Copyright © 2011-2022 走看看