Regex 将不同文件中的值合并到一个CSV文件中

Regex 将不同文件中的值合并到一个CSV文件中,regex,linux,unix,shell,Regex,Linux,Unix,Shell,我有两个文件,每行包含一个值 编辑: 我在写这篇文章的过程中找到了这个问题的答案,但没有意识到我是在不完整的状态下错贴的 我试图做到: paste -d ',' file1 file2 file 3 file 4 > file5.csv 并且得到了一个奇怪的输出。我后来意识到这是因为有些文件在行尾有回车符和换行符,而其他文件只有换行符。我必须永远记住要注意那些事情。 您可能需要澄清或重新记录您的问题,但目前的答案如下 在Linux下连接两个文件 cat filetwo >>

我有两个文件,每行包含一个值

编辑:

我在写这篇文章的过程中找到了这个问题的答案,但没有意识到我是在不完整的状态下错贴的

我试图做到:

paste -d ',' file1 file2 file 3 file 4 > file5.csv
并且得到了一个奇怪的输出。我后来意识到这是因为有些文件在行尾有回车符和换行符,而其他文件只有换行符。我必须永远记住要注意那些事情。
您可能需要澄清或重新记录您的问题,但目前的答案如下

在Linux下连接两个文件

cat filetwo >> fileone
文件1:

1 2 3 将产生:

1;2 3;4 5;6 1.2. 3.4. 5.6.
我感觉你的问题还没打完,但我还是要试一试

或者


如果你在Windows上,也别忘了它的多才多艺


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

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

paste --delimiters=\; file1 file2
1;2 3;4 5;6
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