Windows용으로 좋은 grep 도구는 무엇입니까?
Windows용 grep 도구에 대한 권장 사항이 있습니까?64비트 OS를 활용할 수 있는 것이 이상적입니다.
물론 Cygwin에 대해서도 알고 있고 PowerGREP도 찾았지만, 숨겨진 보석이 있는지 궁금합니다.
FINDSTR은 상당히 강력하고 정규식을 지원하며 이미 모든 Windows 컴퓨터에 있다는 장점이 있습니다.
c:\> FindStr /?
Searches for strings in files.
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
[/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
strings [[drive:][path]filename[ ...]]
/B Matches pattern if at the beginning of a line.
/E Matches pattern if at the end of a line.
/L Uses search strings literally.
/R Uses search strings as regular expressions.
/S Searches for matching files in the current directory and all
subdirectories.
/I Specifies that the search is not to be case-sensitive.
/X Prints lines that match exactly.
/V Prints only lines that do not contain a match.
/N Prints the line number before each line that matches.
/M Prints only the filename if a file contains a match.
/O Prints character offset before each matching line.
/P Skip files with non-printable characters.
/OFF[LINE] Do not skip files with offline attribute set.
/A:attr Specifies color attribute with two hex digits. See "color /?"
/F:file Reads file list from the specified file(/ stands for console).
/C:string Uses specified string as a literal search string.
/G:file Gets search strings from the specified file(/ stands for console).
/D:dir Search a semicolon delimited list of directories
strings Text to be searched for.
[drive:][path]filename
Specifies a file or files to search.
Use spaces to separate multiple search strings unless the argument is prefixed
with /C. For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y. 'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.
Regular expression quick reference:
. Wildcard: any character
* Repeat: zero or more occurances of previous character or class
^ Line position: beginning of line
$ Line position: end of line
[class] Character class: any one character in set
[^class] Inverse class: any one character not in set
[x-y] Range: any characters within the specified range
\x Escape: literal use of metacharacter x
\<xyz Word position: beginning of word
xyz\> Word position: end of word
사용 예: findstr text_to_find *합니다.findstr /s text_to_find *
댓글 추천을 바탕으로 grepWin을 사용하기 시작했는데 환상적이고 무료입니다.
(저는 여전히 파워GREP의 팬이지만, 더 이상 사용하지 않습니다.)
당신이 이미 언급한 것은 알지만, PowerGREP는 굉장합니다.
제가 가장 좋아하는 기능은 다음과 같습니다.
- 폴더에서 PowerGREP를 실행할 폴더를 마우스 오른쪽 버튼으로 클릭합니다.
- 정규식 또는 리터럴 텍스트 사용
- 포함 및 제외할 파일의 와일드카드 지정
- 검색 및 바꾸기
- 미리 보기 모드는 원하는 것을 바꿀 수 있기 때문에 좋습니다.
이제 저는 다른 grep 도구들이 위의 모든 것을 할 수 있다는 것을 깨달았습니다.PowerGREP는 모든 기능을 매우 사용하기 쉬운 GUI로 패키지화했습니다.
RegexBuddy를 데려오신 분들과 그들의 물건을 사랑하는 것 이상으로 제가 아무런 관계가 없는 분들도 마찬가지입니다. (RegexBuddy에는 기본 버전의 grep(Windows용) 자체가 포함되어 있으며 PowerGREP보다 비용이 훨씬 저렴합니다.
추가 솔루션
기존 윈도우즈 명령
윈도우즈에서 리눅스 명령 구현
그래픽 인터페이스가 있는 Grep 도구
추가 Grep 도구
GrepWin은 무료 오픈 소스(GPL)입니다.

거북이 중 한 명이 쓴 grepWin을 사용하고 있습니다.SVN 여러분.Windows에서 작업을 수행합니다.
2013년 7월 업데이트:
Windows에서 항상 사용하는 또 다른 grep 도구는 아스트로 그렙입니다.

단순한 라인 검색 이상을 보여주는 기능(예: --dll=)명령줄 grep)의 NUM은 매우 유용합니다.
그리고 그것은 빠릅니다.SSD가 아닌 드라이브가 있는 오래된 컴퓨터에서도 매우 빠릅니다(예전에는 플래터라고 불리는 회전 디스크로 이 하드 드라이브를 했습니다. 미친 짓이죠?)
무료입니다.
휴대용(단순 zip 아카이브에서 압축 해제)입니다.
원답 2008년 10월
그누 그렙은 괜찮습니다.
예를 들어 다운로드할 수 있습니다. (사이트 ftp)
일반적인 옵션은 모두 여기에 있습니다.
Gawk 및 xargs(GnuWin32의 'find' 포함)와 결합하면 유닉스에서처럼 스크립트를 작성할 수 있습니다!
다음 항목을 참조하십시오.
grep --include "*.xxx" -nRHI "my Text to grep" *
PowerShell의 Select-String cmdlet은 v1.0에서는 정상이었지만 v2.0에서는 훨씬 더 좋습니다.최신 버전의 Windows(윈도우)에 PowerShell이 내장되어 있다는 것은 여기에 있는 기술이 처음에 무언가를 설치하지 않고도 항상 유용하다는 것을 의미합니다.
Select-String에 추가된 새 매개 변수:Select-String cmdlet은 이제 다음과 같은 새 매개 변수를 지원합니다.
- -내용:이렇게 하면 도면 연속선 전후의 선을 볼 수 있습니다.
- -AllMatches: 모든 일치 항목을 한 줄로 볼 수 있습니다(이전에는 한 줄로 첫 번째 일치 항목만 볼 수 있었습니다).
- -NotMatch: grep -vo와 동일
- -인코딩: 문자 인코딩을 지정합니다.
는 함수를 만드는 것이 편하다고 생각합니다.gcir위해서Get-ChildItem -Recurse .매개 변수를 올바르게 전달하는 스마트 및 별칭을 사용합니다.ss위해서Select-String그래서 당신은 다음과 같이 씁니다.
gcir *.txt | ss foo
정확히 'grep' 범주에 속하지는 않을 수도 있지만, 에이전트 트랜잭이라는 유틸리티 없이는 Windows에서 버틸 수 없었습니다.정규식을 지원하는 GUI 기반의 "파일 찾기" 유틸리티입니다.
폴더를 마우스 오른쪽 단추로 클릭하고 "랜스랙"을 누르는 것은 매우 간단합니다.찾고 있는 내용이 들어 있는 파일을 찾습니다.그것은 또한 매우 빠릅니다.
PowerShell은 몇 번 언급되었습니다.다음은 이 기능을 그리피쉬한 방식으로 실제로 사용하는 방법입니다.
Get-ChildItem -recurse -include *.txt | Select-String -CaseSensitive "SomeString"
파일을 하여 현재디렉트있모텍파재검색로다귀합니으적일을스트든는리리에터▁all▁it▁recurs다니색검을 찾습니다.SomeString대소문자를 구분합니다.
더 좋은 것은 다음과 같습니다.
function pgrep { param([string]$search, [string]$inc) Get-ChildItem -recurse -include $inc | Select-String -CaseSensitive $search }
다음을 수행합니다.
pgrep SomeStringToSearch *.txt
그런 다음 기능 별칭을 PowerShell Profile에 추가하면 적절한 명령줄 도구가 없는 경우의 고통을 거의 줄일 수 있습니다.
Git on Windows = grep in cmd.exe
Git을 설치하면 cat, grep, scp 및 기타 모든 좋은 명령어와 같은 기본적인 Linux 명령어를 얻을 수 있다는 것을 방금 알게 되었습니다.
Gitbin 폴더를 설치한 다음 PATH에 추가하고 cmd를 추가합니다.exe는 기본적인 Linux 기능을 가지고 있습니다!
http://code.google.com/p/msysgit/downloads/list?can=3
AstroGrep을 추천합니다.
그것은 자유롭고 오픈 소스이며 간단한 인터페이스를 가지고 있습니다.저는 항상 코드를 검색할 때 사용합니다.
ack은 Windows에서 잘 작동합니다(Perl이 있는 경우).나는 많은 용도로 grep보다 그것이 더 낫다는 것을 발견했습니다.
dnGEP는 윈도우즈용 오픈 소스 grep 도구입니다.다음과 같은 다양한 기능을 지원합니다.
- 대체 실행 취소
- 탐색기에서 폴더를 마우스 오른쪽 단추로 클릭하여 검색하는 기능
- 음성 검색 및 xpath와 같은 고급 검색 옵션
- PDF 파일, 보관 파일 및 Word 문서 내부 검색
IMHO, 인터페이스도 좋고 깨끗해요 :)
Cygwin은 grep를 포함합니다.Cygwin을 설치하면 모든 GNU 도구와 Unix 같은 것들이 Windows에서 잘 작동합니다.
항상 WinGREP를 사용하지만 파일을 놓지 않는 문제가 있었습니다.
자, GNU grep의 Windows 포트 외에도, 자유 소프트웨어 볼랜드의 Free C++ 컴파일러(명령줄 도구가 있는 프리웨어)에서 사용할 수 있는 볼랜드의 grep(GNU와 매우 유사함)도 있습니다.
저는 꽤 오랫동안 Win32용 GNU 유틸리티를 성공적으로 사용해 왔으며 Win32용으로 꼬리와 다른 편리한 GNU 유틸리티뿐만 아니라 좋은 grep도 가지고 있습니다.패키지화된 셸을 사용하지 않고 Win32 명령 프롬프트에서 바로 실행 파일을 사용합니다.
포장된 꼬리 또한 꽤 괜찮은 작은 응용 프로그램입니다.
저는 Aba Search and Replace의 저자입니다.PowerGREP와 마찬가지로 정규 표현식, 추가 사용을 위한 패턴 저장, 대체를 위한 실행 취소, HTML/CSS/JS/PHP에 대한 구문 강조 표시로 미리 보기, UTF-8 및 UTF-16을 포함한 다양한 인코딩을 지원합니다.
PowerGREP에 비해 GUI가 덜 복잡합니다.패턴을 입력할 때 Aba는 즉시 검색을 시작하므로(증분 검색) 정규식으로 실험하여 결과를 즉시 확인할 수 있습니다.
제 도구를 사용해 보는 것을 환영합니다. 어떤 질문이든 기꺼이 대답하겠습니다.
폴더를 마우스 오른쪽 단추로 클릭하고 모든 파일을 nag 화면 없이 정규식으로 검색할 수 있는 Windows용 무료 grep 도구를 원했습니다.
다음은 다음을 기반으로 한 빠른 솔루션입니다.findstr이전 게시물에 언급된
오래 사용한 도구를 보관하는 하드 드라이브 어딘가에 텍스트 파일을 만듭니다.이름을 .bat 또는 .cmd로 바꾸고 다음을 붙여넣습니다.
@echo off
set /p term="Search term> "
del %temp%\grepresult.txt
findstr /i /S /R /n /C:"%term%" "%~1\*.*" > "%temp%\grepresult.txt"
start notepad "%temp%\grepresult.txt"
그런 다음 SendTo 폴더를 찾습니다.7(윈도우 7)에서 Windows 7(윈도우 7)으로 합니다.%APPDATA%\Microsoft\Windows\SendTo배치 파일의 바로 가기를 해당 SendTo 폴더로 끕니다.
바로 가기 이름을 다음으로 변경했습니다.1 GREPSendTo 목록의 맨 위에 유지합니다.
으로 제가은 다으로제하싶것출다니력입파의 로 연결하는 입니다.findstr하여 각 파일을 열 수 .또한 폴더 바로 가기와 함께 사용할 수 없다고 생각합니다.파라미터에 ".lnk"가 포함되어 있는지 확인해야 합니다.
제가 선택한 도구는 적절한 이름의 Windows Grep입니다.
- 멋진 단순한 GUI
- 검색 및 바꾸기 지원
- 발견된 선 주위의 선을 표시할 수 있습니다.
- CSV 및 고정 너비 파일의 열 내에서 검색 가능
UnxUtils는 제가 사용하는 것이고, 저에게 완벽하게 작동합니다.
저는 볼랜드의 그렙을 몇 년 동안 사용했지만, 그것과 일치하지 않는 패턴을 발견했습니다.으악. 지난 몇 년간 발견되지 않은 게 또 뭐가 있을까요?나는 grep와 같은 재귀를 수행하는 간단한 텍스트 검색 대체를 작성했습니다. 소스포지의 FS.EXE입니다.
grep 실패...
C:\DEV> GREP GAAPRNTR \SOURCE\TPALIB\*.PRG
<no results>
Windows의 찾기 기능...
C:\DEV> FINDSTR GAAPRNTR \SOURCE\TPALIB\*.PRG
\SOURCE\TPALIB\TPGAAUPD.PRG:ffSPOOL(cRPTFILE, MEM->GAAPRNTR, MEM->NETTYPE)
\SOURCE\TPALIB\TPPRINTR.PRG: AADD(mPRINTER, TPACONFG->GAAPRNTR)
\SOURCE\TPALIB\TPPRINTR.PRG: IF TRIM(TPACONFG->GAAPRNTR) <> TRIM(mPRINTER[2])
\SOURCE\TPALIB\TPPRINTR.PRG: REPLACE TPACONFG->GAAPRNTR WITH mPRINTER[2]
또 다른 좋은 선택은 MSYS입니다.그것은 당신이 더 생산적일 수 있도록 하기 위해 당신에게 많은 다른 GNU 유틸리티를 제공합니다.
PowerShell의 Select-String도 유사합니다.그것은 같은 옵션과 의미를 가지고 있지 않지만, 여전히 강력합니다.
저는 AJC Grep을 몇 년 동안 매일 사용하고 있습니다.파일 경로가 255자로 제한되어 있고 경고를 보내는 것이 아니라 파일 경로가 하나만 발견되면 중지된다는 것이 유일한 주요 제한 사항입니다.그것은 귀찮지만 자주 일어나지는 않습니다.
64비트 Windows 7 Ultimate에서 사용하기 때문에 64비트 자격 증명으로도 괜찮습니다.
저는 그것을 영원히 사용해 왔고 다행히도 그것은 여전히 사용 가능합니다.그것은 매우 빠르고 매우 작습니다.
당신이 사용하기 쉬운 Windows Grep 도구를 원한다면, 저는 P-Grep라는 도구를 만들었습니다. 제 웹사이트에서 무료로 다운로드할 수 있도록 했습니다: www.adjutantit.com - 홈 메뉴, 다운로드.
Windows Grep은 많은 수의 파일에 문제가 있는 것 같아서 제가 직접 작성했는데, 이것이 더 신뢰할 수 있는 것 같습니다.폴더를 선택하고 마우스 오른쪽 단추를 눌러 P-Grep로 보낼 수 있습니다.send to 폴더는 설치하는 동안 업데이트됩니다.
컴퓨터에 Cygwin을 설치하고 Cygwin bin 디렉토리를 환경 경로에 배치했기 때문에 Cygwin grep은 명령줄에서 정상적으로 작동하여 현재 grep에 대한 모든 스크립팅 요구를 해결합니다.
원하는 솔루션이 없다면 FindStr에 원하는 대로 래퍼를 작성할 수 있습니까?
FindStr은 어쨌든 상당히 좋기 때문에 GUI를 활성화하고(원하는 경우) 몇 가지 추가 기능을 제공하는 것이 좋습니다(예: Find와 결합하여 지정된 문자열(위에서 언급한) 파일 수를 찾는 것).
물론 이는 이를 위한 요구사항, 시간 및 성향이 있다고 가정합니다!
언급URL : https://stackoverflow.com/questions/87350/what-are-good-grep-tools-for-windows
'programing' 카테고리의 다른 글
| 전자 메일 주소가 시스템에 유효한지 확인합니다.넷.메일.메일주소 (0) | 2023.05.27 |
|---|---|
| python datetime.datetime을 일련 번호를 Excel로 변환하는 방법 (0) | 2023.05.27 |
| "2>&1"은 무엇을 의미합니까? (0) | 2023.05.27 |
| WPF 백그라운드 작업자 사용 방법 (0) | 2023.05.27 |
| Mongodb 통합 프레임워크:$group은 인덱스를 사용합니까? (0) | 2023.05.27 |