2012-01-06 13 views
5

Wcześniej dowiedziałem się, and posted, o tym, jak załadować wiele buforów przy użyciu :argadd zamiast :badd. Chciałbym jednak dodać wszystkie pliki wszystkich podkatalogów pasujących do określonego wzorca. Moja obecna próba wygląda tak:Jak przekazać wynik wyszukiwania do polecenia vim's argadd

:argadd !find . -name *.js -type f 

Ale dodaje

51  "!find"      line 1 
52  "~/Documents/neuro-sim/website/3.0" line 1 
53  "-name"      line 1 
54  "*.js"       line 1 
55  "-type"      line 1 
56  "f"       line 1 

do bufora. Jakie modyfikacje muszę wprowadzić, aby to zadziałało?

Odpowiedz

4

Ale dlaczego nie zrobić z

:args **/*.js 

(Tak, wiem, że nie można filtrować pliki w ten sposób ...)

HTH

+0

Czy rekursywnie przejdzie przez każdy podkatalog? Czy mogę zrobić ': args/home/user/*. Js'? – puk

+2

@puk: nie, ale ': args **/*. Js' będzie. Zobacz ': help wildcards' – Benoit

+0

Czy możesz podać" **/*. Js "w odpowiedzi, to zaakceptuję to. – puk

0

Trzeba odwrócone, pojedyncze apostrofy "" ", aby ocenić znalezisko i podłączyć je do argumentów. Zgadzam się, nie wydaje się dziwne, aby nie używać "!" ale myślę, że do obsługi buforów strumieniowych nie ma argumentów ...

:arga `find . -name '*glob_pattern*'` 
Powiązane problemy