用于标识逗号分隔值文件中的值的代码

时间:2011-05-20 06:30:10

标签: shell unix

我想在shell脚本中解析csv文件。我想在提示符下输入文件的名称。喜欢:

somescript.sh filename

可以吗?

此外,我将读取用户输入以在csv中显示特定的特定数据编号。 例如,假设csv文件在每行中有10个值:

1,2,3,4,5,6,7,8,9,10

我想读第5个值。我该怎么做? 涉及多行。

感谢。

2 个答案:

答案 0 :(得分:2)

如果你的文件真的是这么简单的格式(只是逗号,没有空格),那么cut -d, -f5就可以了。

答案 1 :(得分:1)

#!/bin/sh

awk -F, "NR==$2{print \$$3}" "$1"

用法:

./test.sh FILENAME LINE_NUMBER FIELD_NUMBER