grep 来自不同长度的 URL 的字符串

grep for a string from URLs of different lengths

我有一个包含许多 URL 的文本文件 (foo.txt)。每个URL包含一个文件ID:

www.url.com/etc/one/two/72f66_59875c1ffb57b5992-b18/something/maybe/
www.url.com/etc/8823cd1-ab9532a5dc74cc904cc6bd3e2/perhaps/
www.url.com/etc/something/8407fb_80bbb9c0d/1/2/6/

我的预期输出只是文件 ID:

72f66_59875c1ffb57b5992-b18
8823cd1-ab9532a5dc74cc904cc6bd3e2
8407fb_80bbb9c0d

我还没有完全理解如何利用 grep 来实现这一点。我已经谦虚了。

这些看起来都是十六进制数字,所以

grep -oE '/[[:xdigit:]_-]{15,}/' foo.txt  | tr -d /