2016-05-10 4 views
-1

私は数十万行を含む巨大なファイルを持っています。どのくらいの数の異なるセッションまたはIDが含まれているかを知りたい。私は本当にそれが難しいとは思っていませんでしたが、私は方法を見つけることができません。ファイル内のIDの数をカウントする方法

セッションは、次のようになります。

"session":"1425654508277" 

そうとは限らない場合、私は、パターンを知らない、全く、1ずつ増加し、それが切り替わり、そのセッションで数千行があるでしょう1つがあります。だから、ドキュメントに表示されているセッションの数、互いのセッションの数が異なっていることを知りたいだけです(連続している必要がありますが、気がついたことはありません)。

これを行う簡単な方法はありますか?遠く離れていても、私が見つけたのはマクロやスクリプトに優れているから、正しい質問をしていないと思うようになる。私もこれを見つけた:Notepad++ incrementally replaceしかし、私の場合は助けにはならない。

ありがとうございます。

+0

を適用しようとしているこれはJSONと関係があるのでしょうか?見つけたので

はWC/Unixのオプションを試して得ることはありませんでしたか –

+2

'cat data |ユニーク| wc'? [出現の表示回数メモ帳でスマートハイライトは、++]の –

+0

可能な複製(http://stackoverflow.com/questions/27793861/show-count-of-occurrences-when-smart-highlighting-in-notepad) – AdrianHHH

答えて

0

は、自分の質問に追加Excelで列で区切られたExcelには、列をフィルタリングするための異なる値を自動的に与えるFilterオプションがあります。

これは、キー値(「セッション」:「idSession」、各行に100000の値)、そのすべてを1つの列に入れ、フィルターをかけ、手作業でカウントすると、私の場合に適用されます。異なる値の数を取得します。私はこの中には、他の方法

1

jqの使用を検討してください。 [.session]でセッションを抽出し、unique、次にlengthを適用することができます。

https://stedolan.github.io/jq/manual/

は、私はJQの専門家ではなく、これをテストしていませんが、プログラム

unique_by(.message) | length 

が何をしたいあなたを与えるかもしれないと思われます。

+0

それは素晴らしいようですが、私はツールを使用するか分からない。彼らは、私が使用しているオンラインのいずれかを持っている、しかし、あなたがする私に言った何のための構文を知りません。それ以上の助けがあれば素晴らしいと思います。 –

1

自分のプロフィールによると、あなたはJavaScriptを知っているので、あなたはそれを使用することができます。

  1. ファイルをロードします。
  2. sessionを探してください。 (これがJSONの場合、これはmyJson['session']のように単純になる可能性があります)。
  3. セッション値を入力して、地図に追加します。 myCounts[sessionValue] = doesNotMatter
  4. マップ内のキーの数を数えます。プログラミング言語を学習するとき、私はこれを自分で行う(

cat data | uniq | wcを使用するtorazaburoの提案のような簡単な方法、ありますが、UNIXを勉強したいようにそれが聞こえないので、あなたにもあなたのJavaScriptを練習することがあります。使用それはすべて)。

1

つまり、あなたがnotepad++でこれを達成することはできませんが、あなたはlinuxコマンドシェルコマンドを使用することができます:あなたが欲しいの文字列を取得するために管理する場合

cat sessions.txt | uniq | wc 
関連する問題