複数ファイル Windows上でwc(unix word countコマンド)の同様のプログラムを知っていますか?




複数ファイル 行数 カウント windows (8)

私はこのスレッドを見つけ、Windowsが組み込まれているツールだけを使ってwcをエミュレートする革新的なソリューションに魅了されました。これは、文字カウントの必要性への答えを刺激し、Webフォームフィールドの最大文字警告。

バイト数を指定するwc -cが必要な場合は、WindowsのDOSユーティリティ(HELPコマンドには表示されていない)であるDEBUGを使用できます。 文字数は、バイト数から行数を引いたものと、Unix( '\ n')の改行文字の1つ、または改行文字の2倍の改行文字の長さを掛けたものと同じでなければなりません(キャリッジリターン+ラインフィード( '\ cr'と '\ lf' \ 0Dh '0Ah'はDOSプレーンテキストファイルです。

文字カウント=バイト数 - (行数* sizeof( "\ n"))

これを行うには、コマンドラインウィンドウ(スタート - >実行 - >オープン: "cmd")を開き、プレーンテキストファイルでdebugを実行し、ロードされたファイルの長さを含むCXレジスタを調べます。

デバッグ[パス名] -rcx CX [ファイル長(16進数)]:-q

次に、ファイルに対してfindを実行します。

検索/ v / c "notlikelystring" ---------- [パス名]:[行数]

そして数式を適用します。

クイック検索は私にtawbaware wcを与えますが、入力ストリームとしてstdoutを受け入れません。つまり、DOSセッションでパイプを使用することはできません。

注:私はcygwinをインストールしたり、powershellを使うことはできません(これは 'foreach-object {(get-content $ _)。count}'を許可していました)

unxutilsとandとgnuwin32パッケージにはこの機能があります...


gitログの行数をカウントする2つの方法(純粋なWindows CMD)を次に示します。

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

または:

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

最初の利点は、あなたが何かをすることができる環境変数の値で終わることです。 しかし、それは巨大なファイルでは遅くなるかもしれません。


試してください:

find / c / v "〜決して出現しない文字列〜"

このコマンドは、検索文字列を含まないすべての行の数を返します。 それをテストするには、ファイルの最後に空白行を数えないように見えるという問題があります。


さて、同意しないと申し訳ありませんが、 unxutilsにwc.exeがあります

試してみる!

乾杯、


また、 WinXs 4.2もシェアウェアであるため、必要な機能を実行できるかどうかを確認することができます。

このためにスクリプト言語をインストールできますか? それは残忍かもしれませんが、もしそれが仕事を最小限の騒ぎで済ませたら...


Windows上のUnixツールの場合、次のオプションがあります。

msys - similairとunixtoolsは、もともとmingw(ネイティブバージョンのgcc)に必要ないくつかのビルドツールで、ほとんどすべてのcygwinツールを持っています

cygwin - unix、複雑なインストールのためのちょうどeverythign、unix apiを提供するDLLが必要です。 Cygwin.dllのさまざまなバージョンで作成されたツールを混在させる際の問題になることがあります

Unixtools - cygwinが提供するすべてのツールではなく、ネイティブにコンパイルされたツール

ch - ネイティブにコンパイルされたほぼすべてのUNIXツール。 そして 'c'インタプリタを含むシェル。 標準バージョンは無料(ビール)ですが、オープンソースではありません。

あなたがそのようなことが好きなら、 uwin - ATTから無料で、kornシェルを含みます。

mks UNIXツールの商用ポート。 むしろ高価で利用可能な無料版があります。


私の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が処理しないものを探していますか?


ウィンドウ用に作られたオリジナルの "wc"を使うことができます:それはcoreutilsパッケージの一部です。 最新のcoreutils exeを入手してください。





unix