首页 > 解决方案 > 用于从 CSV 文件中删除列的 Shell 脚本命令

问题描述

我正在尝试从 csv 文件中删除一列(我从预处理中得到它作为变量)。

我查看了提供的示例并尝试了以下

cut -d ',' -f 2 X.csv > Y.csv

上面的命令没有帮助 - X.csv 的第二列被复制到 Y.csv

我希望将第二列与分隔符一起删除

例如:

name,place,animal
a,chicago,python
b,new york,squirrel

使用 cut 命令后,文件应如下所示

name,animal
a,python
b,squirrel

标签: bashshell

解决方案


与其选择要丢弃的,不如选择要存储的!

cut -d ',' -f 1,3- X.csv > Y.csv

无论如何,如果您更喜欢删除一列而不是保留其他列(同样的事情,不同的观点),您也可以使用补码标志:

cut -d ',' -f 2 --complement X.csv > Y.csv

推荐阅读