Text 如何使用sed从分隔文件中提取字段

Text 如何使用sed从分隔文件中提取字段,text,awk,sed,centos,Text,Awk,Sed,Centos,我正在使用centos 7 linux 我确实有一个文本文件,其中有很多行的格式相同,这是电子邮件,密码 例如: test@test.com,测试 我想使用sed只保存test@test.com并删除,test,这意味着它将从从“,”开始的所有行中删除 cut -d, -f1 yourfile 或 或 @Setop的答案很好-一般来说,在处理分隔文件时,使用cut或awk是一种常见的做法 根据您的问题,我们也可以使用sed: sed -i 's/,.*//' file # changes th

我正在使用centos 7 linux

我确实有一个文本文件,其中有很多行的格式相同,这是电子邮件,密码

例如:

test@test.com,测试

我想使用sed只保存test@test.com并删除
,test
,这意味着它将从从“,”开始的所有行中删除

cut -d, -f1 yourfile


@Setop的答案很好-一般来说,在处理分隔文件时,使用
cut
awk
是一种常见的做法

根据您的问题,我们也可以使用
sed

sed -i 's/,.*//' file # changes the file in-place
或者,使用两个步骤:

sed 's/,.*//' file > file.modified && mv file.modified file
  • s/,.*/
    及其后面的所有字符替换为零

如果您有多个字段,并且希望从中获得一个小的子集,那么这可能会变得更加棘手。

@Setop的答案很好-一般来说,在处理分隔文件时,使用
cut
awk
是一种常见的做法

根据您的问题,我们也可以使用
sed

sed -i 's/,.*//' file # changes the file in-place
或者,使用两个步骤:

sed 's/,.*//' file > file.modified && mv file.modified file
  • s/,.*/
    及其后面的所有字符替换为零

如果您有多个字段,并且希望从中获得一个小子集,那么这可能会变得更加棘手。

@RomanPerekhrest返回awk:cmd。第1行:{打印awk:cmd。第1行:^意外换行或字符串结尾检查代码是否有错误/typos@RomanPerekhrest返回时将显示awk:cmd.line:1:{打印awk:cmd.line:1:^意外换行或字符串结尾检查代码是否有错误/打字错误