Linux 每行只保留第二个属性

Linux 每行只保留第二个属性,linux,bash,sed,awk,cut,Linux,Bash,Sed,Awk,Cut,我有一个csv文件,每行有4个属性,用逗号分隔。我试图想出一个sed命令,只保留每行的第二个属性。有什么办法吗?你最好还是用cut: 如果要删除重复项,并且不介意条目的顺序,只需执行以下操作: cut -d "," -f 2 file.txt | sort -u 要扩展到ATTR 1和to,只需使用: cut -d "," -f 1,2 file.txt | sort -u 你最好还是切一下: 如果要删除重复项,并且不介意条目的顺序,只需执行以下操作: cut -d "," -f 2 fil

我有一个csv文件,每行有4个属性,用逗号分隔。我试图想出一个sed命令,只保留每行的第二个属性。有什么办法吗?

你最好还是用cut:

如果要删除重复项,并且不介意条目的顺序,只需执行以下操作:

cut -d "," -f 2 file.txt | sort -u
要扩展到ATTR 1和to,只需使用:

cut -d "," -f 1,2 file.txt | sort -u
你最好还是切一下:

如果要删除重复项,并且不介意条目的顺序,只需执行以下操作:

cut -d "," -f 2 file.txt | sort -u
要扩展到ATTR 1和to,只需使用:

cut -d "," -f 1,2 file.txt | sort -u

您不需要使用sed。最快的是切割:

但是,如果您想要sed,您可以这样做:

sed '/[^,]*,\([^,]*\).*/ sxx\1x' file

您不需要使用sed。最快的是切割:

但是,如果您想要sed,您可以这样做:

sed '/[^,]*,\([^,]*\).*/ sxx\1x' file

这是可行的,我如何从csv扩展到属性1和属性2?如果字段包含,?1,10,21\n 2,11,45,22\n 3,12,23\n 4,13,24@anishsane如果字段有,他可能不会将其作为分隔符,对吗?如果字段包含,,则整个字段用双引号括起来。请参阅我先前评论中给出的文件内容。可悲的是,注释会蚕食换行符…@anishsane如果字段中有被认为是分隔符的内容,则必须找到另一个分隔符;在您传递的示例中,我没有得到分隔字段的方法。为什么只包含一些数字?这是可行的,我如何将它从csv扩展到属性1和属性2?如果字段包含,?1,10,21\n 2,11,45,22\n 3,12,23\n 4,13,24@anishsane如果字段有,他可能不会将其作为分隔符,对吗?如果字段包含,,则整个字段用双引号括起来。请参阅我先前评论中给出的文件内容。可悲的是,注释会蚕食换行符…@anishsane如果字段中有被认为是分隔符的内容,则必须找到另一个分隔符;在您传递的示例中,我没有得到分隔字段的方法。为什么只附上一些数字?