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:      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 while read line; do
    21   echo "${line}"
    22 done < ${script_dir}/file.info
  • 相关阅读:
    AppScan扫描教程
    iis发布网站可能遇到的问题及解决方法
    apache、nginx、iis日志记录的各个字段内容与含义
    nmap的使用教程
    ubuntu下编译wiringPi
    配置NAT
    华为OSPF与ACL综合应用实例讲解
    浮动静态路由及负载均衡
    静态路由及默认路由基本配置
    利用三层交换机实现VLAN间路由
  • 原文地址:https://www.cnblogs.com/zhanglianghhh/p/9732532.html
Copyright © 2011-2022 走看看