从外壳中的每一行提取最后一句话



我有file result.txt,看起来像这样:

acb.xyz.asd
mnt.x.sdr
s.ere.43

我想编写shell脚本,该脚本将提取最后一个单词和打印如下:

asd
sdr
43

我尝试了AWK命令,但它不起作用:

awk 'NF>1{print $NF}' result.txt

我认为我需要使用定界符"。然后根据分析结果解析结果.txt。请帮助。

我通常使用 rev | cut | rev从右侧提取列。

 rev result.txt | cut -d. -f1 | rev

rev Linux中的命令用于反向字符。

cut unix中的命令是为了从每一文件中删除各节并将结果写入标准输出。

  • -d表示定界符(shere .
  • -f说要提取哪个字段(此处为1 st 一个)

您确实错过了-F选项的awk

awk -F. 'NF>1{print $NF}' result.txt

另外,您可以使用cut并指定所需的定界符和字段

cut -d. -f3 result.txt

我认为sed -r -e 's/[^.]+.[^.]+.//'会做您想要的。

相关内容

  • 没有找到相关文章