Grep

Screenshot Software:
Grep
Szczegóły programowe:
Wersja: 3.1 Aktualizowane
Filmu: 12 Jul 17
Wywoływacz: grep Team
Licencja: Wolny
Popularność: 4

Rating: 4.0/5 (Total Votes: 1)

Grep to unikalny i bardzo potężny program narzędziowy Linux / UNIX, który umożliwia wyszukiwanie określonych ciągów w jednym lub wielu plikach na systemie operacyjnym GNU / Linux. Jest to oprogramowanie wiersza polecenia, które zostało zaprojektowane od podstaw do wyprowadzenia tylko dopasowanych linii. Polecenie grep składa się z wyboru i interpretacji regexp, kontroli wyjściowej, kontroli kontekstu i różnych opcji.

Aby użyć Grep z wiersza polecenia, musisz wpisać & lsquo; grep --help & rsquo; Polecenie w emulatorze terminali lub bezpośrednio w konsoli Linux, która wyświetli wszystkie dostępne opcje, a także różne przykłady używania tego narzędzia w celu znalezienia określonego wzoru w pliku. Przykładem standardowego użycia podanym w powyższym poleceniu jest & ldquo; grep [OPTION] ... PATTERN [FILE] ... & rdquo;

Chcę zobaczyć przykład!

Najbardziej podstawowym przykładem jest & ldquo; grep -i 'hello world' menu.h main.c & rdquo ;, gdzie & ldquo; -i & rdquo; To jest [OPTION] & ldquo; hello world & rdquo; To [PATTERN] i & ldquo; menu.h & rdquo; I & ldquo; menu.c & rdquo; To [FILE]. To proste polecenie służy do wyszukiwania & ldquo; hello world & rdquo; W każdym z podanych plików. Pamiętaj, że [PATTERN] jest domyślnie podstawowym wyrażeniem regularnym (BRE).

Należy pamiętać, że podczas używania & ldquo ;- & rdquo; Symbolu dla łańcucha [FILE] w powyższym przykładzie, Grep automatycznie odczytuje standardowe wejście. Dodatkowo, jeśli w ogóle nie określono [FILE], odczytuje bieżący katalog.


Czy działa on w moim systemie Linux?

Grep jest uważany przez programistów na całym świecie za niezbędne narzędzie UNIX, co oznacza, że ​​jest on instalowany domyślnie na niemal wszystkich systemach operacyjnych GNU / Linux. Jeśli z jakiegoś dziwnego powodu Twój Linux nie ma zainstalowanego narzędzia grep, będzie można go łatwo zainstalować z domyślnych repozytoriów oprogramowania dystrybucji. Oba architektury 64-bitowe i 32-bitowe są teraz obsługiwane.

Co nowego w tym wydaniu:

  • Udoskonalenia:
  • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
  • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
  • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
  • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
  • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
  • Poprawki błędów:
  • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
  • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
  • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
  • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
  • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
  • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
  • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
  • Zmiany w zachowaniu:
  • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
  • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
  • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
  • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

Co nowego w wersji 3.0:

  • Udoskonalenia:
  • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
  • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
  • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
  • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
  • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
  • Poprawki błędów:
  • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
  • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
  • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
  • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
  • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
  • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
  • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
  • Zmiany w zachowaniu:
  • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
  • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
  • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
  • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

  • Co nowego w wersji 2.28:

    • Udoskonalenia:
    • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
    • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
    • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
    • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
    • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
    • Poprawki błędów:
    • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
    • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
    • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
    • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
    • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
    • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
    • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
    • Zmiany w zachowaniu:
    • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
    • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
    • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
    • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

    • Co nowego w wersji 2.27:

      • Udoskonalenia:
      • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
      • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
      • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
      • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
      • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
      • Poprawki błędów:
      • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
      • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
      • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
      • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
      • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
      • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
      • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
      • Zmiany w zachowaniu:
      • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
      • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
      • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
      • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

      • Co nowego w wersji 2.26:

        • Udoskonalenia:
        • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
        • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
        • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
        • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
        • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
        • Poprawki błędów:
        • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
        • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
        • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
        • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
        • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
        • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
        • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
        • Zmiany w zachowaniu:
        • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
        • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
        • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
        • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

        • Co nowego w wersji 2.25:

          • Udoskonalenia:
          • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
          • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
          • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
          • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
          • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
          • Poprawki błędów:
          • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
          • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
          • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
          • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
          • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
          • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
          • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
          • Zmiany w zachowaniu:
          • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
          • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
          • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
          • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

          • Co nowego w wersji 2.24:

            • Udoskonalenia:
            • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
            • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
            • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
            • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
            • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
            • Poprawki błędów:
            • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
            • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
            • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
            • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
            • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
            • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
            • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
            • Zmiany w zachowaniu:
            • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
            • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
            • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
            • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

            • Co nowego w wersji 2.23:

              • Udoskonalenia:
              • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
              • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
              • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
              • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
              • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
              • Poprawki błędów:
              • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
              • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
              • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
              • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
              • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
              • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
              • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
              • Zmiany w zachowaniu:
              • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
              • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
              • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
              • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

              • Co nowego w wersji 2.22:

                • Udoskonalenia:
                • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
                • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
                • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
                • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
                • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
                • Poprawki błędów:
                • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
                • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
                • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
                • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
                • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
                • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
                • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
                • Zmiany w zachowaniu:
                • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
                • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
                • Podczas przeszukiwania danych binarnych grep może traktować bajty nietextowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
                • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

                • Co nowego w wersji 2.21:

                  • Udoskonalenia:
                  • Wydajność została znacznie poprawiona w przypadku przeszukiwania plików zawierających otwory, na platformach, w których flaga SEEK_DATA lseek działa skutecznie.
                  • Wydajność poprawiła się w przypadku odrzucenia danych, których nie można dopasować nawet do pierwszej części wzoru beztroski.
                  • Poprawiono wydajność w przypadku bardzo długich ciągów w wzorach.
                  • Jeśli plik zawiera nieprawidłowo zakodowane dane o bieżącym locale i jest to wykryte przed wyświetleniem dowolnej zawartości pliku, grep traktuje plik jako plik binarny.
                  • grep -P nie zgłasza już błędu i kończy pracę w przypadku nieprawidłowych danych UTF-8. Zamiast tego uważa, że ​​dane nie są dopasowane.
                  • Poprawki błędów:
                  • grep przestał odpowiadać na wzorce, które zawierają w lub W w wielu lokalizacjach.
                  • grep nie bę dzie miał poczĘ ... tku linii wewnĘ ... trz podczas działania w polach innych niż UTF8, co prowadzi do wydrukowania potencjalnie wielu linii, które nie pasujĘ .... Np. Polecenie "seq 10 | Env LC_ALL = zh_CN src / grep -n .. " Wydrukowałby to: 1: 1 2 3 4 5 6 7 8 9 10 co oznacza, że ​​dopasowanie, "10" Był w linii 1. [błąd wprowadzony w grep-2.19]
                  • grep -F -x -o nie drukuje kolejnej nowej linii dla każdego meczu. [Błąd wprowadzony w grep-2.19]
                  • grep w locale wielobajtowym innych niż UTF8 może błędnie pasować do środka znaku wielobajtowego przy użyciu zamiennika "^" - zakotwiczonego w wzorze, co prowadzi do drukowania niezgodnych linii. [Błąd występujący od "początku"]
                  • grep -FY nie pasuje do innych niż UTF8 wielobajtowych ustawień regionalnych, takich jak Shift-JIS, gdy dane wejściowe zawierają dwubajtowy znak, XY, a następnie pojedynczy bajt, Y. grep znajdzie pierwszy , Dopasowanie średniej wielomianowości "Y", a następnie nieprawidłowo przesuń wskaźnik wewnętrzny o jeden bajt za daleko, pomijając cel "Y" Tuż po tym. [Błąd wprowadzony w grep-2.19]
                  • grep -E odrzucił niedopasowane ") zamiast traktować go jak" ) ". [Błąd występujący od "początku"]
                  • W systemie NetBSD grep -r nie ma już raportów "nieodpowiedni typ lub format pliku" Gdy odmawia podążania symbolicznym ogniwem. [Błąd wprowadzony w grep-2.12]
                  • Zmiany w zachowaniu:
                  • Zmienna środowiskowa GREP_OPTIONS jest przestarzała, a grep ostrzega, jeśli jest używana. Proszę użyć aliasu lub skryptu.
                  • W ustawieniach regionalnych z kodami znaków wielobajtowych innych niż UTF-8 grep -P zgłasza błąd i wychodzi z niego, zamiast źle się zachowywać.
                  • Podczas przeszukiwania binarnych danych, grep może traktować bajty nie-tekstowe jako terminatory linii. Może to znacznie zwiększyć wydajność.
                  • grep -z przestaje automatycznie traktować bajt " 200" jako dane binarne.

                  • Co nowego w wersji 2.20:

                    • Poprawki błędów:
                    • grep --max-count = N FILE przestanie już czytać po meczu Nth. I.e., podczas gdy grep nadal będzie drukować poprawne wyjście, to będzie kontynuował czytanie do końca wejścia, a tym samym potencjalnie na zawsze. [Błąd wprowadzony w grep-2.19]
                    • Polecenie echo aa | grep -E 'a (b $ | c $) "błędnie zgłosiłoby dane wejściowe jako dopasowaną linię. [Błąd wprowadzony w grep-2.19]
                    • Zmiany w zachowaniu:
                    • grep --exclude-dir = 'FOO /' obecnie wyklucza katalog FOO. Wcześniej ukośnik oznaczał, że opcja jest nieskuteczna.

Komentarze do Grep

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!