2

我有几个文件,每行都包含一个值。

编辑 :

在写这篇文章的过程中,我想出了这个问题的答案,但没有意识到我错误地以不完整的状态发布了它。

我试图做:

paste -d ',' file1 file2 file 3 file 4 > file5.csv

并得到一个奇怪的输出。后来我意识到发生这种情况是因为有些文件在行尾既有回车符又有换行符,而另一些文件只有换行符。我必须永远记住要注意那些事情。

4

5 回答 5

2

文件 1:

1
2
3

文件2:

2
4
6
paste --delimiters=\; file1 file2

将产生:

1;2
3;4
5;6
于 2008-08-24T17:54:52.437 回答
1

我有一种感觉,你还没有完成输入你的问题,但我还是会试一试。;)

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
于 2008-08-24T17:58:51.947 回答
0

您可能需要澄清或重新标记您的问题,但目前的答案如下。

Linux下连接两个文件

cat filetwo >> fileone
于 2008-08-24T17:52:05.470 回答
0

如果您在 Windows 上,也不要忘记多功能的LogParser 。

它可以对平面文本文件运行类似 SQL 的查询,以执行各种合并操作。

于 2008-08-24T19:30:56.827 回答
0

以前使用 logparser 或命令行工具的答案应该可以工作。如果您想对记录进行一些更复杂的操作,例如过滤或连接,您可以考虑使用 ETL 工具(想到 Pentaho、Mapforce 和 Talend)。这些工具通常为您提供一个图形调色板来定义数据源之间的关系以及您想要对行执行的任何操作。

于 2008-08-25T00:49:16.560 回答