小编use*_*881的帖子

比较三个.csv文件并输出相似之处

我正在使用bash脚本编写一个项目来读取三个不同的.csv文件并输出相似的行.三个.csv文件使用相同的信息以相同的方式格式化,但第二列可能不同.例如,如果我有三个csv文件,名为A.csv,B.csv和C.csv.

A.csv
Animal, Color, Age
Dog, Brown, 9
Cow, White, 3
Cat, Black, 5
Parrot, Blue, 2

B.csv
Animal, Color, Age
Dog, Black, 9
Cow, White, 3
Cat, Brown, 5
Parrot, Blue, 2

C.csv
Animal, Color, Age
Dog, Brown, 9
Cow, White, 3
Cat, Tan, 5
Parrot, Blue, 2
Run Code Online (Sandbox Code Playgroud)

运行程序后,我希望获得如下输出:

Animal, Color, Age
Cow, White, 3
Parrot, Blue 2
Run Code Online (Sandbox Code Playgroud)

我已经阅读了diff3,但只能输出与我想要做的相反的差异.任何帮助将不胜感激.谢谢

csv bash

5
推荐指数
2
解决办法
281
查看次数

按编号重新排序CSV文件中的列

我试图用倒数第二列替换第二列,并删除最后三列.例如,我有这个sample.csv

1,2,3,4,5,6
a,b,c,d,e,f
g,h,i,j,k,l
Run Code Online (Sandbox Code Playgroud)

我想输出:

1,5,3
a,e,c
g,k,i
Run Code Online (Sandbox Code Playgroud)

我正在使用此命令:

awk 'BEGIN{FS=OFS=","} {$2=$(NF-1); NF=NF-3}'1 sample.csv
Run Code Online (Sandbox Code Playgroud)

当我在excel中查看csv文件时,它可以正常工作.但是,当我在记事本中查看.csv文件时,我注意到一行中的最后一项连接到下一行中的第一项.所以我得到了

1,5,3a,e,cg,k,i
Run Code Online (Sandbox Code Playgroud)

任何人都可以给我任何关于如何解决问题的建议,这样我就可以得到.csv文件,为每一行创建一个新的段落,如所需的输出?谢谢.

regex csv bash awk sed

4
推荐指数
1
解决办法
1787
查看次数

用bash中的另一个替换CSV文件中的列

我有一个包含许多列的csv文件.我试图用同一个文件中的倒数第二列替换第二列.例如,如果我有一个文件,sample.csv

1,2,3,4,5,6
a,b,c,d,e,f
g,h,i,j,k,l
Run Code Online (Sandbox Code Playgroud)

我想输出:

1,5,3,4,5,6
a,e,c,d,e,f
g,k,i,j,k,l
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我完成这项任务吗?另请注意,我将使用cut函数丢弃最后两列,因此我打开将csv文件分开以便开始,以便我可以将一个csv文件中的列替换为另一个csv文件中的另一列.哪个更容易实现.在此先感谢您的帮助.

csv bash awk

2
推荐指数
1
解决办法
3576
查看次数

标签 统计

bash ×3

csv ×3

awk ×2

regex ×1

sed ×1