【问题标题】:How to get a csv file as an array in unix shell?如何在 unix shell 中将 csv 文件作为数组获取?
【发布时间】:2015-06-03 13:07:26
【问题描述】:

下面是我正在使用的脚本

#!/bin/bash

export IFS=","

cat ddd.csv 

我需要将 ddd.csv 的内容作为数组获取。 我还需要将该数组转换为带有标题的表格形式。

请帮忙,我是 unix shell 的新手。

【问题讨论】:

  • 你能给我们一个输入的例子,以及你希望用它做什么吗?您是否想要一个数组,其中每个项目都是 CSV 的一行,或者您是否希望读取多个数组,其中 CSV 中的每一行都作为单个数组返回?还是别的什么?
  • 我需要将mysql数据库的值与csv数组的值进行比较。我将如何做到这一点?
  • 输入示例 -> header1,header2,header3, content1, content2, content3, content1, content2, content3, content1, content2, content3
  • 当有人要求提供更多信息时,最好更新您的问题而不是发表评论(因为问题中用于格式化内容的选项要丰富得多)。例如,您的评论似乎显示了一行,但从您使用的名称来看,我猜它实际上代表了多行。

标签: shell unix csv


【解决方案1】:

This page 展示了如何在 bash 中提取 CSV 数据的一些技巧,如下所示:

#!/bin/bash
while IFS="," read f1 f2 f3
do
        echo $f1 $f2 $f3
done < ddd.csv

这应该会给你一个类似输出的表格。或者,您可以将字段放入数组中,或者对它们做任何您喜欢的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-12
    • 2014-04-26
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 2014-07-07
    • 2018-11-04
    相关资源
    最近更新 更多