【发布时间】:2014-04-26 22:58:41
【问题描述】:
我有一个由 md5 生成的包含数千行的文件,其中包含哈希,然后是每行的路径。我正在搜索数百个 sed 示例,但无法完全破译它们。
我如何将每行的最后一个斜杠包括在内,然后只输出文件名?
fd373e07fd6f85085455a7d03a6ea8d8 /Volumes/yadda/20121007-083424-MDT-5DM35545.CR2
b4108ee8509dbfd0e8fd93effbb2c87f /Volumes/yadda/20121007-083424-MDT-5DM35546.CR2
98188a4e073a65d39840b34446228533 /Volumes/yadda/20121007-083424-MDT-5DM35547.CR2
7fe69f18e1a216a7a68812b1b3322764 /Volumes/yadda/20121007-083424-MDT-5DM35548.CR2
7b48289014eddab153a819a460a46f83 /Volumes/yadda/20121007-083424-MDT-5DM35549.CR2
832f43451691fa4e8577f66820f8714c /Volumes/yadda/20121007-083424-MDT-5DM35550.CR2
对于输出,我只需要文件名:
5DM35545.CR2
5DM35546.CR2
5DM35547.CR2
5DM35548.CR2
5DM35549.CR2
5DM35550.CR2
我知道我可以只删除哈希然后使用 basename,但我希望在一次操作中完成,并学习一点 sed。
感谢您没有破坏新手。
【问题讨论】:
-
你可以试试
awk,它可能比sed使用起来更简单,而且网上有很多文档。基本上你告诉awk你的字段分隔符是-,然后输出最后一个字段。