`
jak47
  • 浏览: 74008 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论

使用shell按行读取文件

阅读更多

在shell里面,按行读取文件得注意设置环境变量IFS,否则无法正确读入。

具体例子如下

 

OLDIFS=$IFS
IFS=$'\n'

xxx_file=/home/xx/xxx.txt
in_file=/home/xxx/xxx.in

for pattern in $(cat ${xxx_file})
do
  grep -v -e $pattern  ${in_file}
done

IFS=$OLDIFS

 

要按行读取csv文件时候,代码如下

IFS=","

sed "1,3d" ${input_file_1} | while read col1, col2, col3, col4
do
   echo "$col1, $col2, $col3"
done

IFS=$OLDIFS

 

其中 sed "1,3d" 是删除头三行的意思, 和本文无直接关系。

分享到:
评论

相关推荐

    Linux shell 脚本读取配置文件

    Linux 系统 shell脚本读取配置文件

    如何在Shell脚本中逐行读取文件.doc

    这个脚本使用输入重定向 `读取文件 `mycontent.txt` 的每一行内容,并将其保存在变量 `rows` 中。然后,使用 `echo` 命令将每行内容输出。 方法二:使用 cat 命令和管道符 第二种方法是使用 `cat` 命令和管道符 `|...

    shell按行读取文件的3种方法

    在Shell脚本编程中,有时候我们需要处理文本文件,特别是按行读取文件内容。这篇文章将详细解释三种在Shell中按行读取文件的方法,并探讨它们之间的差异。 **方法一:使用`while`循环和`read`命令** 第一种方法是...

    利用Shell脚本循环读取文件中每一行的方法详解

    本文主要给大家介绍了关于使用Shell脚本循环读取文件每一行的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、使用for循环 for line in `cat filename` do echo $line done ...

    shell下同时读取多个文件的方法.docx

    在 shell 脚本中,可以多种方式实现按行读取文件。例如,我们可以使用 `for` 循环来读取文件: ```bash for line in `cat ${input_filename}` do echo $line done ``` 或者,我们可以使用 `while` 循环来读取文件:...

    shell脚本可配置化读取文件夹中文件名称.rar

    这可能包括选择特定的文件扩展名、按照某种顺序读取文件、或者根据文件大小或其他属性过滤文件。以下是一个基础的shell脚本示例,用于读取当前目录下所有文件的名称: ```bash #!/bin/bash # 遍历当前目录下的所有...

    读取配置文件的shell脚本实现

    本文将以“读取配置文件的shell脚本实现”为例,深入讲解如何使用awk命令解析配置文件并提取所需信息。 配置文件通常包含键值对,例如在例子中的`Config.ini`,它定义了网络配置项。awk命令是Linux shell中强大的...

    读取文件SHELL并判断文件生成时间,低于5分钟文件不拷贝。

    读取文件SHELL并判断文件生成时间,考虑到文件可能没有生成完,低于5分钟文件不拷贝。并且可以循环处理,分别判断生成的时间

    Shell脚本逐行读取文本文件(不改变文本格式)

    另一种不依赖IFS的方法是使用`head`和`tail`命令组合,逐行读取文件: ```bash #!/bin/bash testfile=$1 x=$(wc -l $testfile | awk '{print $1}') i=1 while [ $i -le $x ] do echo "$(head -n $i $testfile | ...

    winshell 快速读取系统文件图标

    2. **获取文件图标**:使用`winshell.file_type_icons()`函数,传入文件扩展名,可以获取该类型的所有关联图标。例如,`icons = winshell.file_type_icons('.txt')`。 3. **读取图标到ImageList**:`ImageList`是...

    在 UEFI shell 下读取内存存储的数据信息

    在UEFI环境下,这样的日志文件可以方便地在不同的环境中运行,无论是在U启动UEFI版本还是在实体机上,只要系统支持UEFI shell,就可以读取并分析"meminfo.log"。 值得注意的是,读取内存数据需谨慎操作,因为直接...

    Shell脚本一次读取文件中一行的2种写法

    在Shell脚本编程中,读取文件内容是常见的操作,特别是对于一次性读取文件中的一行数据。本文将详细讲解两种不同的方法来实现这一目标,并同时探讨两种读取文本文件的方法。 ### 方法一:使用`while`循环与`read`...

    Linux打开shell时读取配置文件的顺序

    在Linux操作系统中,当用户打开一个Shell,例如Bash,系统会按照特定的顺序读取一系列的配置文件,以便初始化Shell环境。这些配置文件用于设置环境变量、定义别名、自定义Shell行为等。理解这一顺序对于管理和维护...

    Shell脚本从文件中逐行读取内容的几种方法实例

    这允许我们读取文件的两行内容: ```bash #!/bin/bash if [ $# -ne 1 ];then echo "Usage: $0 filename" exit 1 fi file=$1 { read line1 read line2 } <$file echo "First line in $file is $line1" echo ...

    sql server下如何读取文件

    5. **读取文件**:最后一步是从文件中读取内容并显示。 ```sql EXEC @hr = sp_OAMethod @object, 'OpenTextFile', @tmp OUTPUT, @strPath IF @hr <> 0 BEGIN EXEC sp_OAGetErrorInfo @object RETURN END SET ...

    Shell脚本批量添加CSV数据到MySQL

    本篇将详细介绍如何使用Shell脚本结合CSV文件批量将数据导入MySQL数据库,以提高工作效率。 首先,`prov.csv` 是一个包含CSV(逗号分隔值)格式的数据文件,这种文件类型常用于存储表格数据,易于读写和处理。在本...

    shell 删除指定行上一行

    题目要求使用Shell脚本删除指定文件中包含“ServerName abc.com”的行及其上一行。这里的“指定行上一行”是指紧跟在含有特定模式的行之上的那一行。 #### 知识点二:`sed`命令基础介绍 `sed`(stream editor)是...

    Shell逐行读取文件的4种方法

    本文主要讲解了四种不同的方法来使用Shell逐行读取文件。每种方法都有其特定的用途和效率,了解这些方法可以帮助你根据具体需求选择最合适的方式。 1. **while循环法**: 这是最常见且效率最高的方法。通过`while ...

Global site tag (gtag.js) - Google Analytics