Czy jest dostępny grep obsługujący Unicode dla Windows 32-bit?
Czy jest dostępny grep obsługujący Unicode dla Windows 32-bit?
Odpowiedzi:
W przypadku narzędzia wiersza poleceń spójrz na odpowiedź KeyboardMonkey (ale nie jestem pewien, czy obsługuje Unicode).
W przypadku narzędzia GUI (open source): dnGREP
Dla prostszego (tylko do wyszukiwania) narzędzia GUI: AstroGrep, a dla bardziej funkcjonalnego (i kosztownego): PowerGREP
Aktualizacja: GnuWin32 to ostatnio utrzymywany port tych narzędzi. (Dzięki Quack)
Oto lista pakietów i do pobrania grep indywidualnie.
Zobacz UnxUtils , który obejmuje również grep. Używam ich również na moim komputerze stacjonarnym.
Tak, jak wspomina Fluxtendu,
Jednak,
-U
przełącznika. Polecam Cygwin jako najprostsze rozwiązanie, jeśli znasz grep uniksowy. Po prostu upewnij się, że dołączasz ŚCIEŻKĘ i możesz użyć jej również w powłoce systemu Windows.Zadałem to pytanie jakiś czas temu i wreszcie odkryłem grepWin, który jest GUI poprzez menu kontekstowe powłoki. Działa całkiem dobrze.
Najprostszym sposobem na to jest narzędzie Windows o nazwie „ciągi”, które wykonuje dokładnie to, czego szukasz:
Strings (Sysinternals)
Zasadniczo, wyciąga wszystkie znaki Unicode z plików, dzięki czemu można następnie potokować go do dowolnego grepal systemu Windows, którego używasz, czy to findstr
(natywnego) lub jak ja, gnuwin32 grep dla Windows (robi to, co mówi na puszce).
Otrzymujesz więc coś takiego:
strings *.odf | grep -i "texttosearch"
findstr
działa również w wielu przypadkach, ale grep jest po prostu lepszy.
strings
Program jest używany do znajdowania ciągów tekstowych, które są wmieszane w nietekstowej ( „binarny”) danych; np. pliki wykonywalne. Pytanie nie mówi nic o osadzeniu ciągów tekstowych w danych binarnych. …………………… Co jeśli chcę wyszukać w pliku tekstowym Unicode znaki takie jak π
i ≤
? Czy mógłbym pisać strings dissertation | findstr "π"
? Czy findstr
obsługuje Unicode? Jeśli tak, to dlaczego nie powiedzieć findstr "π" dissertation
, co zaproponowano pięć lat temu? Jeśli nie, to co zyskałeś?
Zobacz BareGrep (darmowa wersja ma ekran powitalny uruchamiania), który wydaje się być całkiem kompletnym graficznym grepem. Dokumentacja wspomina o wsparciu dla „wielu formatów plików”, więc wyobrażam sobie, że zawiera Unicode.