sunny03 发表于 2018-8-24 11:06:39

shell读取文件的每一行

  shell读取文件的每一行
  写法一:
  ----------------------------------------------------------------------------
  #!/bin/bash
  while read line
  do
  echo $line
  done < filename(待读取的文件)
  ----------------------------------------------------------------------------
  写法二:
  ----------------------------------------------------------------------------
  #!/bin/bash
  cat filename(待读取的文件)|while read line
  do
  echo $line
  done
  ----------------------------------------------------------------------------
  如果有需要输出含指定字符的行,可以写成
  ----------------------------------------------------------------------------
  #!/bin/bash
  cat filename(待读取的文件) | grep word(指定字符)|while read line
  do
  echo $line
  done
  ----------------------------------------------------------------------------
  写法三:
  ----------------------------------------------------------------------------
  for line in `cat filename(待读取的文件)`
  do
  echo $line
  done
  ----------------------------------------------------------------------------
  说明:
  for逐行读和while逐行读是有区别的,如:
  file文件内容如下:
  $ cat file
  1111
  2222
  3333 4444 555
  $ cat file | while read line; do echo $line; done
  1111
  2222
  3333 4444 555
  $ for line in $(
页: [1]
查看完整版本: shell读取文件的每一行