使用awk打印第一个和最后一个字段



我打印每行第一个和最后一个字段的awk脚本没有按预期工作。它只打印最后一行的最后一个字段。我该如何解决这个问题?

c:awk>type file_lists.t01
dgo_files.txt date_frame_full.f90 xdtff_good.f90   
dtd_files.txt date_frame_full.f90 xread_date_time_frame_stream_dir.f90  
xem_files.txt kind.f90 foo.f90
c:awk>gawk '{ print $1 " " $NF }' file_lists.t01
dgo_files.txt 
dtd_files.txt 
xem_files.txt foo.f90

您的文件似乎使用回车。我建议使用GNU awk:

gawk 'BEGIN{ RS="n|rn" }{ print $1 " " $NF }' file_lists.t01

参见:8个强大的Awk内置变量–FS、OFS、RS、ORS、NR、NF、FILENAME、FNR-

最新更新