银搜索器:如何返回不带路径的文件名

29

我正在使用Silver Searcher在我的Calibre图书馆中查找信息,该图书馆默认使用长目录和文件名,这些名称有点冗余。例如搜索:

chris@ODYSSEUS:~/db/ebooks/paper-art$ ag --markdown angel

Christophe Boudias (Editor)/Origami Bogota 2014 (Paginas de Origami) (2)/Origami Bogota 2014    (Paginas de Origami) - Christophe Boudias (Editor).md
8:* [16] Angel (???)
9:* [22] Christmas Angel (Uniya Filonova)

Juan Fernando Aguilera (Editor)/Origami Bogota 2013 (Paginas de Origami) (1)/Origami Bogota 2013 (Paginas de Origami) - Juan Fernando Aguilera (Editor).md
29:* [96] Inspired Origami Angel (K. Dianne Stephens)
31:* [100] Angel for Eric Joisel (Kay Kraschewski)

我只想返回示例中显示整个路径的文件名。我该怎么做?

1个回答

45

使用小写字母 l 标志将返回匹配文件名,而不是匹配的行。

例如:

$ ag -l "angel"

您可以将其导出到 sed 中,以删除最后一个 / 及其前面的任何字符,从而仅保留文件名。

ag -l angel | sed 's=.*/=='


仍然返回整个路径以及文件名...我想要只返回文件名,不包括路径! - Chris
抱歉,我错过了。使用管道到SED应该可以解决问题(请参见编辑)。 - zsoobhan
5
жҲ‘们еҸҜд»ҘдҪҝз”ЁbasenameжқҘиҺ·еҸ–е®ғпјҡag -l angel | xargs basenameгҖӮ - ryan
2
xargs -n 1 basename-n max-args, --max-args=max-args:每个命令行最多使用max-args个参数)。否则,您可能会收到“basename:extra operand”错误。 - Pablo Bianchi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接