36

快速搜索给了我tawbaware wc,但它不接受 stdout 作为输入流,这意味着我不能在DOS会话中使用管道。

笔记:

我无法安装 cygwin 或使用 powershell(本来可以使用 ' |foreach-object {(get-content $_).count}')

unxutilsgnuwin32软件包可能具有此功能...

4

10 回答 10

31

更容易,find /c. 前任:

netstat -an | find /c "ESTABLISHED"

find /c:仅显示包含字符串的行数。

于 2011-01-27T18:37:01.653 回答
29

您可以使用为 Windows 构建的原始“wc”:它是coreutils包的一部分。获取最新的 coreutils exe

于 2008-10-29T15:33:44.417 回答
9

对于 Windows 上的 unix 工具,您的选择是:

msys - 与 unixtools 类似,最初只是 mingw(gcc 的本机版本)所需的一些构建工具,现在几乎拥有所有 cygwin 工具

cygwin - 几乎适用于 unix,安装复杂,需要 dll 来提供 unix api。混合使用不同版本的 cygwin.dll 构建的工具可能会出现问题

Unixtools - 不是 cygwin 提供的所有工具,而是本地编译的

ch - 几乎所有的 unix 工具,本机编译。以及一个包含“c”解释器的外壳。标准版是免费的(啤酒),但不是开源的。

uwin - 没有 ATT,如果你喜欢这种东西,包括 korn shell。

mks一个商业端口的 unix 工具。鉴于可用的免费版本相当昂贵。

于 2008-10-29T15:45:44.267 回答
5

尝试:

find /c /v "~any string that will never occur~"

此命令对不包含搜索字符串的所有行进行计数。测试它,我看到一个问题,它似乎没有计算文件末尾的空行。

于 2010-12-04T16:18:34.123 回答
3

好吧,我很抱歉不同意,但unxutils确实有一个 wc.exe

试试看!

干杯,

于 2008-10-29T15:34:31.390 回答
3

我的unxutils包有字数:

C:\Java\vssWorkspace\java\portlets_core>wc -l C:\Users\malp\AppData\Local\Temp__portlets41366.html 79717 C:\Users\malp\AppData\Local\Temp__portlets41366.html

此外,unxutils 页面显示wc.exe可用。您是否正在寻找wc.exe无法处理的内容?

于 2008-10-29T15:34:49.033 回答
2

以下是另外两种(纯 Windows CMD)计算 git 日志中行数的方法:

set n=0
for /f %a in ('git log --oneline') do set /a n=n+1

或者:

git log --online | find /v /c ""

第一个的优点是你最终得到了一个环境变量中的值,你可以用它来做事。但是对于大文件,它可能会执行缓慢。

于 2012-09-25T23:26:42.900 回答
0

还有WinXs 4.2,它是共享软件,所以你可以看看它是否能满足你的需要。

您可以为此安装脚本语言吗?这可能是矫枉过正,但如果它以最少的大惊小怪完成工作......

于 2008-10-29T15:38:14.610 回答
0

我找到了这个线程,并被仅使用 Windows 内置的工具模拟 wc 的创新解决方案所吸引。这激发了我对字符数的需求的答案,以便我可以在与 Web 表单字段的最大字符的战斗中获胜警告。

如果您想要wc -c给出字节数,您可以使用DEBUG,这是 Windows 中的一个 DOS 实用程序(HELP 命令未列出)。字符数应等于字节数减去行数乘以换行符的大小,换行符是 Unix 的一个换行符 ('\n') 或两个字符,回车 + 换行符('\cr' 和 '\lf' 或 ' \0Dh' '0Ah' 用于 DOS 纯文本文件。

字符数 = 字节数 - (行数 * sizeof("\n"))

为此,打开一个命令行窗口(开始->运行->打开:“cmd”),在纯文本文件上运行调试并检查包含加载文件长度的 CX 寄存器:

调试 [路径名] -rcx CX [十六进制文件长度]:-q

然后在文件上运行查找:

find /v /c "notlikelystring" ---------- [路径名]: [行数]

并应用公式。

于 2012-08-04T01:28:59.210 回答
-1

getgnuwin32有助于下载和安装 gnuwin32(当然有 wc 实用程序)。

于 2008-10-29T16:01:09.120 回答