Windows 7과 동등한 명령 프롬프트 grep이 있습니까? 즉, 명령 결과를 필터링하고 싶습니다.
배쉬 사용 :
ls | grep root
Windows 명령 프롬프트에서 무엇입니까?
답변
Findstr은 원하는대로 들립니다. 나는 항상 Windows 플랫폼에서 대략 grep와 동등한 것으로 사용합니다.
파이프가있는 또 다른 예 :
C:\> dir /B | findstr /R /C:"[mp]"
답변
몇 가지 가능성이 있습니다.
- 유닉스
grep
명령어 의 포트를 사용하십시오 . 몇 가지 선택이 있습니다. GNUWin32 , cygwin 및 unxutils 가 종종 언급됩니다 . SFUA 유틸리티 툴킷 의 도구는 잘 알려져 있지 않지만, 어떤면에서는 더 나은 것으로, Windows 7 Ultimate Edition 및 Windows Server 2008 R2와 함께 제공 되는 UNIX 기반 응용 프로그램 용 하위 시스템 에서 실행됩니다 . (Windows XP의 경우, 하나의 수 를 다운로드 하고 설치 서비스를 UNIX 버전 3.5 .)이 툴킷은 명령 줄 TUI 도구의 큰 숫자를 가지고,에서mv
와du
에의 콘과 C 쉘을 통해,perl
그리고awk
. x86-64뿐만 아니라 x86-64 및 IA64 버전으로 제공됩니다. 이 프로그램은 에뮬레이터 DLL (예cygwin1.dll
:)을 Win32보다 계층화 하지 않고 Windows의 고유 한 적절한 POSIX 환경에서 실행 합니다. 그렇습니다. 툴킷에는grep
300여 개의 툴킷이 있습니다. grep
사람들이 작성하고 게시 한 많은 기본 Win32 명령 중 하나를 사용하십시오 . 예를 들어, Tim Charron은 수정 된 GNU grep의 기본 Win32 버전을 가지고 있습니다. 도 있습니다 PowerGREP , 베어 그렙 , grepWin , AstroGrep 및 dnGrep는 이러한 모든 GUI 프로그램을 있지만하지 TUI 프로그램.- 제공된 사용
find
과findstr
.grep
정규 표현식 기능과 마찬가지로 구문은 구문과 다릅니다 .
답변
경우 PowerShell에서의 명령이 허용되는 사용
PS C:\> Get-ChildItem | Select-String root
또는 짧다
PS C:\> ls | sls root
별칭 sls
은 PowerShell 버전 3.0부터 만 정의됩니다. 적은 타이핑을 위해 별칭을 추가 할 수 있습니다.
PS C:\> New-Alias sls Select-String
cmd에서 직접 PowerShell 명령을 실행하려면
C:\>powershell -command "ls | select-string root"
답변
초기 개정판에서는 MS-DOS를 썼습니다 FIND
. 그러나 더 이상 사용되지 않는 고대 OS입니다.
Windows NT 명령 프롬프트에서 (예를 들어, 윈도우 2000 및 XP 이상에서 승리 그래서 예 WIN7, win10)는, 당신이 사용할 수있는 find
및 findstr
다운로드 경우 GnuWin32을 다음grep
기본적인 차이점은 findstr에 정규 표현식 지원이 있다는 것입니다. Grep은 정규식을 가장 잘 지원합니다.
C:\>dir | find "abc"
C:\>dir | find /i "abc"
find /?
및 findstr /?
스위치가하는 일을 보여줍니다.
Gnuwin32 에는 “패키지”가 있습니다. GnuWin32를 다운로드한다면 친숙한 기본 유용한 유틸리티를위한 coreutils 패키지를 제안하지만 grep은 그 자체 패키지가 아닙니다.
추가
지난번에 확인한 GnuWin32의 grep은 오래되었습니다. Cygwin의 grep은 훨씬 더 최신입니다. 또한 많은 사람들이 * nix 명령의 Windows 포트 대신 가상 머신을 사용합니다.
답변
오히려 사용한다면 grep
아니라 findstr
, 거기에 싱글 .exe
에서 파일 버전 UnxUtils는 , 그래서 휴대용 그리고 그것은을 설치하거나 Cygwin에서 같은 것을 사용할 필요가 없습니다.
답변
당신은 설치를 시도 할 수 있습니다 Chocolatey을 Windows에서, 그 통해 설치 고우 포커 도구를. grep
Windows에서 제공됩니다 .
Gow
Windows에서 GNU를 나타냅니다. Windows에서 Unix 명령 행 유틸리티를 제공합니다.
답변
배쉬 사용
$ ls | grep root
Cmd 사용
> dir /b | findstr root
여기서 /b
의미 나 디렉토리와 파일의 목록은