你知道Windows上的wc(unix字数统计命令)类似的程序吗?

时间:2008-10-29 15:26:02

标签: windows cmd

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

注意:

我无法安装cygwin或使用powershell(这会允许'|foreach-object {(get-content $_).count}')

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

10 个答案:

答案 0 :(得分:30)

更简单, find /c 。 例如:

netstat -an | find /c "ESTABLISHED"
  

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

答案 1 :(得分:28)

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

答案 2 :(得分:9)

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

msys - similair到unixtools,最初只需要一些构建工具与mingw(gcc的原生版本)一起使用,现在几乎拥有所有的cygwin工具

cygwin - 关于unix,复杂安装的每个标志,需要一个dll才能提供unix api。混合使用不同版本的cygwin.dll构建的工具可能会出现问题

Unixtools - 并非所有由cygwin提供但本机编译的工具

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

uwin - 免于ATT,如果你喜欢那种东西,包括korn shell。

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

答案 3 :(得分:5)

尝试:

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

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

答案 4 :(得分:3)

嗯,我很抱歉不同意,但是unxutils确实有wc.exe

试一试!

干杯,

答案 5 :(得分:3)

我的unxutils包有字数:

  

C:\爪哇\ vssWorkspace \ java中\ portlets_core> WC   -l C:\ Users \ malp \ AppData \ Local \ Temp__portlets41366.html   79717   C:\ Users \用户MALP \应用程序数据\本地\ Temp__portlets41366.html

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

答案 6 :(得分: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 ""

第一个优点是你最终得到了一个你可以做的环境变量中的值。但是对于巨大的文件,它可能会表现得很慢。

答案 7 :(得分:0)

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

你可以为此安装脚本语言吗?它可能有点矫枉过正,但是如果能够以最小的努力完成工作......

答案 8 :(得分:0)

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

答案 9 :(得分:0)

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

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

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

要执行此操作,请打开命令行窗口(开始 - >运行 - >打开:“cmd”),在纯文本文件上运行debug并检查包含加载文件长度的CX寄存器:

  

调试[pathname]   -rcx   CX [文件长度为十六进制]   :   -q

然后在文件上运行find:

  

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

并应用公式。