問題タブ [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.
perl - 重複した行の内容を破棄せずに uniq first フィールド
このような状況に直面するのはこれが初めてです。最初のフィールドだけに uniq を実行する必要がありますが、重複した行の内容を削除する必要はありません。この例を見てください
入力ファイル
(uniq -w 12) を実行すると、最初のフィールド (12 文字しかない) だけが、他のすべての行で重複がないかチェックされます。結果は次のようになります。
重複するすべての行の内容は破棄され、最初の行だけが残ります。私が探しているのはこのようなものです
重複した行の内容を失わずに uniq を使用するにはどうすればよいですか?! AWK/sed/perl でそれを行う方法はありますか?
unix - Unixで重複フィールドを持つレコードを抽出します(uniqを使用せずに!)
フィールド 1 の可変長キー フィールドとフィールド 2 のその他のデータで構成されるテキスト ファイルがあります。フィールドはタブ文字 ("\t") で区切られています。キー フィールドにはスペースが含まれています。ファイルはキー フィールドでソートされます。
これをフィルタリングして、重複するキー フィールド (つまり、フィールド 1) を持つレコードのみを含むファイルを作成し、レコードのグループを空白行で区切るという利点を追加したいと思います。
例えば
...等。言い換えれば、uniq -d -D
代替フィールド区切り文字または可変長フィールドのオプションを提供した場合、正確にはどうなるでしょうか!
既製の Unix フィルターを使用してコマンドでこれを達成する方法はありますか?
bash - 同じ行の出現回数を数える方法は?
次のようなファイルがあります。
出現回数を数えて3列目に書き込みたい行ごとに、次のように各行を新しい行で分割する必要があります。
私はこのスクリプトを書くことができました:
input_uniq はの出力です
残念ながら、次のような出力が得られます。
エコーを 1 つだけ使用すると、出力が非常に奇妙になります (基本的に、$line は最初に $a で上書きされます)。そのため、必要なことを行う別の方法や、スクリプトを修正する方法の提案を探しています。
shell - 文字列の grep の結果をカウントし、除外を指定するにはどうすればよいですか?
以下のパラメータを含むメールログファイルがあります
127.0.0.1以外のすべてのリレーをカウントしたい
出力は次のようになります
bash - ubuntu でテキストをファイルにラップする
私は2つのテキストファイルを持っています
今、私は2つのテキストファイルを読み込んで、一致するユーザー名を次のような形式でラップしたいと思います
ありがとう
unix - 同一の出現回数で列を並べ替えます-awk、sort、tr、またはuniqを使用しますか?
タブで区切られたデータがあるとしましょう。
そして、最初の列に名前が出現する回数(最大から最小)で並べ替えたいので、Peter(3回)Joe(2回)とLaura(1回)があります。
2番目の列ではなく、最初の列で並べ替えるだけで済みます。私はsortのドキュメントを読んでいますが、機能がないと思います。誰でも簡単な方法がありますか?
shell - 最初の列に科学的記数法データを含むファイルをマージし、uniq を使用する方法
コマンドの使用に関する 2 つの質問uniq
、助けてください。
最初の質問
2 つのファイルがあるとします。
を使用するcat 1.dat 2.dat | sort -n | uniq > 3.dat
と、2 つのファイルを 1 つにマージできます。結果は次のとおりです。
1.dat
しかし、ファイルに科学表記法がある場合、
結果は次のようになります。
これは私が望むものではありません。文字列ではなく数値であることをどのようにuniq
理解させることができますか。1e-1
2 番目の質問
上と同じですが、今度は 2 番目のファイル2.dat
の最初の行を少しだけ変更します (から0.3 1.67
へ0.3 1.57
)
結果は次のようになります。
私の質問はこれuniq
です。最初のファイルの値に基づいて使用し、最初の列からのみ繰り返しを見つけて、結果が次のようになるようにする方法は次のとおりです。
ありがとう
より複雑なテスト ケース
linux - 大文字と小文字を区別しないためにLinuxコマンド「sort-f|uniq-i」を一緒に使用する
2列のデータのリストから一意の重複データを見つけようとしています。本当に列1のデータを比較したいだけです。
データは次のようになります(タブで区切られています)。
だから私は次のことで遊んでいます:
大文字と小文字を区別せずに並べ替えると(「並べ替え」のみ、-fオプションなし)、重複が少なくなります
gawk'{FS = "\ t"; 印刷$1}'EN-IT_Corpus.txt| 並べ替え | uniq-i-D>重複
大文字と小文字を区別せずに並べ替えると( "sort -f")、重複が増えます
gawk'{FS = "\ t"; 印刷$1}'EN-IT_Corpus.txt| 並べ替え-f | uniq-i-D>重複
大文字と小文字を区別せずに重複を検索する場合は、最初に大文字と小文字を無視して並べ替えてから、並べ替えられたデータに基づいて重複を検索するため、#2の方が正確であると考えるのは正しいでしょうか。
私の知る限り、sortには重複を表示するオプションがないため、sortコマンドとuniqueコマンドを組み合わせることができません。
ありがとう、スティーブ
ruby - 配列内の一意のオブジェクト インスタンス (Ruby)
カスタム定義の class がありInstruction
ます。インスタンスは初期化され、配列に収集されます。いくつかの重複した (すべてのインスタンス変数が同一の) インスタンスがあり、それらを除外したいと考えています。
'2000-01-01', 'Small', '9am'
エントリの 1 つが によって削除されることを期待しています.uniq
が、出力にはまだエントリが繰り返されています。
次のように、クラス定義にメソッドを==
追加しようとしました。eql?
しかし、それもうまくいきませんでした...助けて!