提问人:grosauro 提问时间:8/25/2008 最后编辑:eLRuLLgrosauro 更新时间:12/17/2017 访问量:1109
将不同文件中的值合并到一个 CSV 文件中
Combining values from different files into one CSV file
问:
我有几个文件,每行都包含一个值。
编辑:
我在写这篇文章时想出了这个问题的答案,并没有意识到我在不完整的状态下错误地发布了它。
我试图做:
paste -d ',' file1 file2 file 3 file 4 > file5.csv
并且得到了一个奇怪的输出。我后来意识到这种情况正在发生,因为有些文件在行尾既有回车符又有换行符,而其他文件只有换行符。我必须永远记住要注意这些事情。
答:
0赞
sparkes
8/25/2008
#1
您可能需要澄清或重新标记您的问题,但就目前而言,答案如下。
在 Linux 下连接两个文件
cat filetwo >> fileone
2赞
Bjorn Reppen
8/25/2008
#2
文件 1:
1 2 3
文件2:
2 4 6
paste --delimiters=\; file1 file2
将产生:
1;2 3;4 5;6
1赞
wilhelmtell
8/25/2008
#3
我有一种感觉,你还没有打完你的问题,但我还是会试一试。;)
file1: file2: file3:
1 a A
2 b B
3 c C
~$ paste file{1,2,3} |sed 's/^\|$/"/g; s/\t/","/g'
"1","a","A"
"2","b","B"
"3","c","C"
或
~$ paste --delimiter , file{1,2,3}
1,a,A
2,b,B
3,c,C
0赞
Frank Krueger
8/25/2008
#4
如果您使用的是 Windows,请不要忘记多功能的 LogParser。
它可以对平面文本文件运行类似 SQL 的查询,以执行各种合并操作。
0赞
Dana the Sane
8/25/2008
#5
前面使用 logparser 或命令行工具的答案应该有效。如果您想对记录进行一些更复杂的操作,例如过滤或联接,您可以考虑使用 ETL 工具(我想到了 Pentaho、Mapforce 和 Talend)。这些工具通常为您提供一个图形调色板,用于定义数据源与要对行执行的任何操作之间的关系。
评论