【发布时间】:2021-07-28 19:13:19
【问题描述】:
这可能很简单,但由于我缺乏编程技能,我无法弄清楚如何完成。
我有这样的 file.txt 内容:
1 22 July 2003 Path /Documents/Photo
2 23 July 2003 Path /Documents/Photo
3 24 July 2003 Path /Documents/Photo
我只想打印字段 2,3,4 和最后一个字段的最后一个单词,每行包含分隔符“/”。
像这样:
22 July 2003 Photo
23 July 2003 Photo
24 July 2003 Photo
我已经用 awk 命令尝试过这个,但它从最后一个字段中删除了所有单词。
awk '{ print $2,$3,$4,$(NF=$NF) }'
Lynx:~ root# cat file.txt | awk '{ print $2,$3,$4,$(NF=$NF) }'
22 July 2003
23 July 2003
24 July 2003
如何使用 awk、sed 或 grep 完成此操作?
提前致谢!
【问题讨论】:
-
我试过了,它会删除'/'之前的所有字段,我只得到最后一个字段的最后一个单词。如果还有其他建议?我会很感激的。谢谢!
-
请在你的文件上运行
cat -v file,看看你里面有没有控制M字符? -
谢谢!对于您的建议,我会尝试。