答案1
答案2
有几种可能性:
- 使用 Unix 命令的端口
grep
。有几种选择。经常提到的是操作系统,赛格威, 和工具不太为人所知,但在某些方面更好的工具是SFUA 实用工具包,运行于基于 UNIX 的应用程序子系统它随 Windows 7 Ultimate 版本和 Windows Server 2008 R2 一起提供。(对于 Windows XP,可以下载并安装UNIX 版本 3.5 的服务.) 该工具包有大量的命令行 TUI 工具,从mv
和du
,到 Korn 和 C shell,再到perl
和awk
。它既有 x86-64 和 IA64 版本,也有 x86-32 版本。这些程序在 Windows 的本机正确 POSIX 环境中运行,而不是使用仿真器 DLL(例如cygwin1.dll
)在 Win32 上分层。是的,该工具包有grep
,以及大约 300 个其他版本。 grep
使用人们编写和发布的众多本机 Win32 命令之一。 蒂姆·查伦修改后的 GNU grep 的原生 Win32 版本例如。还有电力GREP,裸 Grep,查找,AstroGrep, 和dnGrep,尽管这些都是 GUI 程序而不是 TUI 程序。- 使用提供的
find
和findstr
。 请注意,其语法与的语法不同grep
,正则表达式功能也是如此。
答案3
如果电源外壳允许使用命令
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"
答案4
如果您更愿意使用grep
,而不是findstr
,则有一个.exe
文件版本Unx工具类,因此它是可移植的,不需要安装它,或者使用像 Cygwin 之类的东西。