narzędzie ack + jak zatrzymać wyszukiwanie w pliku po znalezieniu pierwszego ciągu

0

użyteczność przedmiotu

Nie wiem, czy to możliwe, ale muszę zadać następujące pytanie, ponieważ mam duży problem -

Korzystam z narzędzia ack, aby znaleźć ciąg znaków w bardzo, bardzo dużych plikach

Problem polega na tym, że potwierdzenie znajduje ciąg w pliku, ale kontynuuje wyszukiwanie tego samego ciągu do końca pliku

moje pytanie brzmi: czy można zatrzymać wyszukiwanie w pliku po znalezieniu pierwszego ciągu?

Mój problem polega na tym, że potwierdzenie zajmuje dużo czasu, ponieważ największe pliki

w każdym razie moim celem jest tylko znalezienie pierwszego pasującego łańcucha i natychmiastowe wyjście z pliku do innych plików

czy niektórzy mogą mieć pomysł, jak używać ack, jak wyjaśniłem?

  ./ack -a some_string  /var 
Jennifer
źródło

Odpowiedzi:

1

Jedyne potwierdzenie, które znalazłem, to konwerter Kanji - czy o to ci chodzi?

grep może wykonać zadanie i możesz je zatrzymać w dowolnym momencie:

Oto odpowiednia opcja:

-m NUM, --max-count=NUM
 Stop  reading  a  file  after  NUM  matching  lines.

Możesz użyć tego w następujący sposób:

grep -m 1 some_string file_name

Sprawdź stronę man grep, aby uzyskać więcej informacji.

Louis
źródło
patrz betterthangrep.com
Jennifer
Chcę zrobić to samo z ack, czy to możliwe, nie mogę używać grep, ponieważ grep nie jest elektronarzędziem jak ack
Jennifer
0

Znajduję rozwiązanie

trzeba napisać:

  ./ack -a --max-count=1 some_string   /var 
Jennifer
źródło
Lub po prostu użyj skróconej wersji tego: -1
Andy Lester