您的位置:首页 > 运维架构 > Shell

shell 读取文件第几行 第几列的值

2016-07-04 17:07 603 查看

1 .  问题:  读取 list文件(内容如下) 中 NO1  和NO2 的值

 platform                      NO1            NO2

 --------------------         -----------    -----------

 AIX_64                              1          20

 NT_X64                             2          21

 LINUX_X64                       3          22

 HPIA_64                           4           23

 SOLARISX64                    5          24

 LINUXPPC64                    6          25

 SOLARIS_64                    7           26

2.  脚本 

cat list| awk 'NR>2' | while read
platform  NO1  NO2

do

    echo $NO1"   "$NO2

done

#NR>2  表示从第三行读取

#while read platform  NO1  NO2   这三个参数必须有,

如果只有   while read NO1  NO2 , 那么输出结果 NO1
 是 platform的值, NO2  输出的是文件中NO1  和NO2 的值。

3. 输出 结果

                1       20

                2       21

                3       22

                4       23

                5       24

                6       25

                7       26

4.  读取文件的每一行

cat list | while read line

do

     echo ${line}

done

5. 读取文件中某行的列

取list 中AIX_64 对应NO1的值

  newNO=$(grep AIX_64 list|awk '{print $2}')

   echo ${newNO}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: