問題タブ [uniq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
141 参照

grep - 1 つのページ (シェル) へのリファラーによって引き起こされた全体的なページ ビュー

nginx または apacheの標準形式のログ ファイルを使用してcombined access_log、UNIX シェルで、特定のリファラーが一度持ち込んだ各訪問者 (つまり、IP アドレス) からの訪問数またはページ ビュー (つまり、合計要求数) をどのように計算しますか?

つまり、別のサイトであなたのサイトへのリンクを見つけた各訪問者によるすべてのリクエストの数です。

0 投票する
1 に答える
4227 参照

bash - CSVファイルへのUnix uniqコマンド

単一および複数単語の英語フレーズを含むテキスト ファイル (list.txt) があります。私の目標は、各単語の単語カウントを行い、結果を CSV ファイルに書き込むことです。

最大から最小の順に並べ替えられた、各単語の一意のインスタンスの量を書き込むコマンドを見つけました。そのコマンドは次のとおりです。

問題は、新しいファイル (output.txt) のフォーマット方法です。先頭に 3 つのスペースがあり、その後に出現回数が続き、その後にスペースが続き、その後に単語が続きます。次に、次の行に進みます。例:

CSV などのより望ましい形式で結果を取得するには、どうすればよいですか? たとえば、次のようになりたいです。

さらに良いのは次のとおりです。

Unix コマンドでこれを行う方法はありますか、またはテキスト エディターまたは Excel 内で後処理を行う必要がありますか?

0 投票する
1 に答える
4041 参照

unix - ソート、ユニーク、表示最大数

以下の表では、重複を削除し、ある時点で 12:06 と言うと、最大カウント値のみが表示されます。

出力は次のようになります。

0 投票する
1 に答える
9047 参照

bash - ファイル内の特定の単語の出現をカウントするためのコマンドライン(jsonのキーの数など)

コマンドライン関連のものは少し新しいですが、いくつかのポインタを探しています。

次のクイックスクリプトを使用して、jsonファイルにキーが含まれている回数をカウントします。

それはうまく機能しますが、たくさんのキーの数をテストしたいときに繰り返します...

そこで、keyname引数で個別に指定するのではなく、テキストファイルに格納されているキー名の配列を取得するようにアップグレードしたいと思います。それがワンライナーのままで、無料のままであればcatさらに良いでしょう。

私はワンライナーがあまり得意ではないので、代わりにこれを試しました:

(1)testkeys.shというスクリプトを作成します。

(2)keys.txtというキーファイルを作成します

(3)次に

しかし、これは完了せずに実行されました。

考え?

keys.txtの行を変数にして、grepのループステートメントに入れる方法を見つけようとしましたが、失敗しました。必要な出力は...

アップデート

grepが-fフラグを使用してパターンファイルを引数として取ることができることは知っていますが、それでも私が理解できない方法でスクリプトを大幅に変更する必要があるようです。だから、例えば...

変換しようとしています...

の中へ...

を生成します

...たくさんの時間。また、n回実行される個々の実行の速度よりも/はるかに/長くかかります。

私もこれを試しましたが、これはクールだと思いました。

しかし、これも長い間実行され、count=1を超えて集計されませんでした。

0 投票する
2 に答える
237 参照

bash - 1 行だけでなく、最初の N 回の一意の行を取得する

私は空白で区切られた2つのフィールドである行を持つファイルを持っています:

2 列目にタイプの最初の N 行を取得する必要があります。私がしていることは sort -k2 | uniq -f1 --all-repeated=prepend | grep "^$" -A3 、どちらが機能するはずですが、とuniq -f1は異なる何かを与えてくれますuniq -f1 --all-repeated=prepend。prepend は一意のチャンクの前に空行のみを追加する必要があることを正しく理解していますか?

または、より良いアプローチがありますか?

ありがとう

0 投票する
1 に答える
110 参照

sorting - 1 つの列に基づいて、2 つ以上の重複があるすべての行を保持します

次の形式の何百万行ものファイルがあります。

を使用して、列 9 で並べ替えましたsort -k9。列 9 は 100 文字の文字列ですが、一部のエントリにはピリオドが含まれる場合があります。ここで、列 9 の 100 文字の文字列が 1 回または 2 回 (<3 回) しか発生しない行を削除し、他のすべての行をファイルに保存します。

uniq私は( -d -f9 -w100) で遊んで、役に立つsortawk思いますが、初心者すぎてこれを理解できません。

0 投票する
1 に答える
173 参照

ruby - 2 つの配列を取り、一意ではない値から 3 つ目の配列を作成します

巨大なメーリング リストの移行の重複を排除しようとしていますが、落とし穴があります。複製を取得して、それらを独自の配列に変換したいと思います(3番目)。

これらの配列を非常に単純で短くしましょう。

c = ["rich@aol.com"]基本的に、両方のリストに存在する唯一のメールであるため、作成しようとしています。

私がこれまでに試みたこと:

unqiq の反対はありますか?

戻り値: ["rich@aol.com", "ian@aol.com"]

a + b を 3 番目の c 配列にダンプし、c を ab.uniq と比較して、重複しているものを取得できますか?

これを行う簡単な方法がありませんか?どんな助けでも大歓迎です!!!!

0 投票する
3 に答える
4539 参照

awk - uniqまたはawkを使用してシェルスクリプトで一意のIPアドレスとエラーの数を取得する方法は?

シェルスクリプトを使用して、複数回繰り返して URL に対して nslookup を実行しています。各 URL で IP が返された回数を確認する必要があります。

出力ファイルでは、出力は次のように保存されます

uniq -c コマンドを使用すると、同じ IP アドレスが隣接している場合はカウントされますが、同じ IP アドレスが隣接していない行にある場合はカウントされません

ここにサンプル出力があります

特定の URL に対して複数の IP アドレスが返され、それらが隣接していない行にある場合は、no. 反復の。その場合、uniq-c コマンドは機能しません。ソートオプションを使用するとソートされますが、URLごとに上記のように出力を表示する必要があります。カウントとその IP アドレスを含む URL と次の行。

たとえば。google.com で nslookup を実行すると、複数のアドレスが返され、uniq -c を実行すると、次の出力が得られます。ご覧のとおり、同じ IP アドレスがありますが、隣接していない行では uniq -c が機能しないため、カウントは 1 しかありません。

AWK も試してみましたが、その場合、必要な形式で出力されません。

awk コマンド

これを達成するためのより良い解決策を提案できますか - 上記の形式でカウントと表示を取得しますか?

希望する出力形式は

サンプル入力ファイル。

として必要なサンプル出力

ありがとうございました。

0 投票する
2 に答える
469 参照

shell - Grep で単語数を取得する

私は使用しています

単語数を取得しますが、形式のファイルがあります

そして、返されるコマンドがあるかどうか疑問に思っていました: 3,2,1,1

前のコマンドを複数回実行する代わりに