使用 bash 将 .txt 文件连接成 .csv
Concatenating .txt files into a .csv with bash
我目前有三个文件file1.txt,file2.txt,file3.txt 我想加入一个文件 bigfile.csv
文件的当前格式为:
file1.txt
28-02-14 17:50:58 01401009 17756100
28-02-14 17:50:58 01401009 17756100
28-02-14 17:50:58 01401009 17756100
28-02-14 17:50:58 01401009 17756100
file2.txt
441343******6401
100052******0314
100051******2784
100056******7772
file2.txt
150000
150000
100000
5000
期望的输出是
28-02-14 17:50:58 01401009 17756100;>441343******6401;150000
paste -d ";" file1.txt <(sed s/^/\>/ file2.txt) file3.txt
第二个文件更新为插入 >
。如果那是错字,只需
paste -d ";" file1.txt file2.txt file3.txt
您可以使用以下命令:
paste -d ';' file1.txt file2.txt file3.txt > bigfile.csv
示例输出:
$ cat bigfile.cvs
28-02-14 17:50:58 01401009 17756100;441343******6401;150000
28-02-14 17:50:58 01401009 17756100;100052******0314;150000
28-02-14 17:50:58 01401009 17756100;100051******2784;100000
28-02-14 17:50:58 01401009 17756100;100056******7772;5000
$
我目前有三个文件file1.txt,file2.txt,file3.txt 我想加入一个文件 bigfile.csv
文件的当前格式为:
file1.txt
28-02-14 17:50:58 01401009 17756100
28-02-14 17:50:58 01401009 17756100
28-02-14 17:50:58 01401009 17756100
28-02-14 17:50:58 01401009 17756100
file2.txt
441343******6401
100052******0314
100051******2784
100056******7772
file2.txt
150000
150000
100000
5000
期望的输出是
28-02-14 17:50:58 01401009 17756100;>441343******6401;150000
paste -d ";" file1.txt <(sed s/^/\>/ file2.txt) file3.txt
第二个文件更新为插入 >
。如果那是错字,只需
paste -d ";" file1.txt file2.txt file3.txt
您可以使用以下命令:
paste -d ';' file1.txt file2.txt file3.txt > bigfile.csv
示例输出:
$ cat bigfile.cvs
28-02-14 17:50:58 01401009 17756100;441343******6401;150000
28-02-14 17:50:58 01401009 17756100;100052******0314;150000
28-02-14 17:50:58 01401009 17756100;100051******2784;100000
28-02-14 17:50:58 01401009 17756100;100056******7772;5000
$