Awk 删除字母后的所有句点

Awk 删除字母后的所有句点,awk,sed,Awk,Sed,如果我有这样一个文件: 东西 材料1 材料2 东西 12.5 45.2 stugg stugg.1 stugg.2 5.2 8. 琥珀色 琥珀色1 琥珀色 琥珀色 琥珀色 7. 21.2 amst amst.1 五, 我想删除东西的重复项&stugg&amber&amst 如果所有以.number结尾的内容都被视为重复,那么我如何使用awk来实现这一点?还是塞德 输出应该是 东西 12.5 45.2 stugg 5.2 8. 琥珀色 7. 21.2 amst 5. 对于以字母开头的行,如果该行

如果我有这样一个文件:

东西
材料1
材料2
东西
12.5
45.2
stugg
stugg.1
stugg.2
5.2
8.
琥珀色
琥珀色1
琥珀色
琥珀色
琥珀色
7.
21.2
amst
amst.1
五,

我想删除
东西的重复项
&
stugg
&
amber
&
amst
如果所有以
.number
结尾的内容都被视为重复,那么我如何使用awk来实现这一点?还是塞德

输出应该是

东西
12.5
45.2
stugg
5.2
8.
琥珀色
7.
21.2
amst
5.

对于以字母开头的行,如果该行没有以点和数字结尾,请打印该行。


在评论中找到更新的要求:

awk '$1 !~ /[[:alpha:]]\.[[:digit:]]+$/' file 
啊,这将省略类似“notseen.1”的内容,即使它不是重复的:

awk '
  {root = $1; sub(/\.[[:digit:]]+$/, "", root)}
  $1 ~ /[[:alpha:]]\.[[:digit:]]+$/ && seen[root] {next}
  {print; seen[root] = 1}
' file

对于以字母开头的行,如果该行没有以点和数字结尾,请打印该行。


在评论中找到更新的要求:

awk '$1 !~ /[[:alpha:]]\.[[:digit:]]+$/' file 
啊,这将省略类似“notseen.1”的内容,即使它不是重复的:

awk '
  {root = $1; sub(/\.[[:digit:]]+$/, "", root)}
  $1 ~ /[[:alpha:]]\.[[:digit:]]+$/ && seen[root] {next}
  {print; seen[root] = 1}
' file

对于以字母开头的行,如果该行没有以点和数字结尾,请打印该行。


在评论中找到更新的要求:

awk '$1 !~ /[[:alpha:]]\.[[:digit:]]+$/' file 
啊,这将省略类似“notseen.1”的内容,即使它不是重复的:

awk '
  {root = $1; sub(/\.[[:digit:]]+$/, "", root)}
  $1 ~ /[[:alpha:]]\.[[:digit:]]+$/ && seen[root] {next}
  {print; seen[root] = 1}
' file

对于以字母开头的行,如果该行没有以点和数字结尾,请打印该行。


在评论中找到更新的要求:

awk '$1 !~ /[[:alpha:]]\.[[:digit:]]+$/' file 
啊,这将省略类似“notseen.1”的内容,即使它不是重复的:

awk '
  {root = $1; sub(/\.[[:digit:]]+$/, "", root)}
  $1 ~ /[[:alpha:]]\.[[:digit:]]+$/ && seen[root] {next}
  {print; seen[root] = 1}
' file


这就是文件的全部内容吗?这些是唯一的东西吗?那不是文件的全部内容,在某些行中只有数字,如3.434或12.324,而在其他行中,文件如上所述。您想完全忽略只有数字的行吗?我想不更改只有数字的行,因此您想保留上述行中的第一行唯一行,并保留所有其他行不变?区别特征是否仅为
之前的字母字符,而不是
之前的数字字符?这是文件的全部内容吗?这些是唯一的东西吗?那不是文件的全部内容,在某些行中只有数字,如3.434或12.324,而在其他行中,文件如上所述。您想完全忽略只有数字的行吗?我想不更改只有数字的行,因此您想保留上述行中的第一行唯一行,并保留所有其他行不变?区别特征是否仅为
之前的字母字符,而不是
之前的数字字符?这是文件的全部内容吗?这些是唯一的东西吗?那不是文件的全部内容,在某些行中只有数字,如3.434或12.324,而在其他行中,文件如上所述。您想完全忽略只有数字的行吗?我想不更改只有数字的行,因此您想保留上述行中的第一行唯一行,并保留所有其他行不变?区别特征是否仅为
之前的字母字符,而不是
之前的数字字符?这是文件的全部内容吗?这些是唯一的东西吗?那不是文件的全部内容,在某些行中只有数字,如3.434或12.324,而在其他行中,文件如上所述。您想完全忽略只有数字的行吗?我想不更改只有数字的行,因此您想保留上述行中的第一行唯一行,并保留所有其他行不变?区别特征是
之前的字母字符还是
之前的数字字符?很抱歉,我的问题不太清楚。这与我最初描述的一样,但它改变了文件中的所有其他内容。很抱歉,我的问题并不完全清楚。这与我最初描述的一样,但它改变了文件中的所有其他内容。很抱歉,我的问题并不完全清楚。这与我最初描述的一样,但它改变了文件中的所有其他内容。很抱歉,我的问题并不完全清楚。这与我最初描述的一样,但它改变了文件中的所有其他内容。