2014-11-27 11 views
9

Używam Silver Searcher, aby znaleźć informacje w mojej bibliotece Calibre, która domyślnie używa długiego katalogu i nazw plików, które są nieco zbędne. Przykład wyszukiwania:Silver Searcher: jak zwrócić nazwę pliku bez ścieżki

[email protected]:~/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) 

Chciałbym zwrócić tylko nazwę pliku, gdzie cała ścieżka jest pokazana w przykładzie. Jak mogę to zrobić?

Odpowiedz

13

Flaga l (lowecase L) zwróci pliki z dopasowaniami zamiast dopasowanych wierszy.

np.

$ ag -l "angel"

można rura do sed usunąć niczego do i ostateczną / który pozostawia nazwę.

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

+0

To nadal zwraca całą ścieżkę wraz z nazwą pliku ... Staram się zwracać tylko nazwę pliku, nie ścieżkę! – Chris

+0

Przepraszam, tęskniłem za tym. Rurociąg do SED powinien to zrobić (patrz edycja). – zsoobhan

+3

moglibyśmy użyć 'basename' aby to uzyskać:' ag -l angel | xargs basename' – ryan

Powiązane problemy