アプリ版:「スタンプのみでお礼する」機能のリリースについて

はじめまして。シアトルでシスアド見習いをしているものです。

今日はみなさんに、Linux関連のコマンドをお聞きしたくて質問させていただきます。

Linuxを使っていると、例えばメール通数をカウントする際「wc -l」などをよく使います。
全体のラインをカウントする時にはそれでいいのですが、各ユニークな項目ごとのカウントをそれぞれ出すようなコマンドなどがないかと探しております。

感覚的には

A
A
B
B
B
C
C
C
C
D

というラインがあったら、

A 2
B 3
C 4

のような表示になれば嬉しいなと思います。

シェルスクリプトを書いてForで回して・・・などもできるのですが、もしそういう専用コマンドなどありましたらご教授いただけると幸いです。

よろしくお願いします。

A 回答 (2件)

>A 2


>B 3
>C 4
>のような表示になれば嬉しいなと思います。

カウントと内容の表示が逆でもよいのであれば…
uniq -c -d
でしょうか…。
なお、事前にsortしておく必要はあるります。
# チェックしたい部分によってはawkとかで抜き出して…とかいろいろいぢる必要はあるかも知れませんけど。(ログファイルなどから特定項目…とか。)
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

確かにこの実例のように簡単ではないのですが、仰るとおりAWKコマンドで抜き出してからGREP→SEDで綺麗にして・・・という作業は入るものの、自分が求めていたコマンドでした。

RTFM、身に刻みたいと思います。

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

お礼日時:2011/01/07 16:58

本当にこれだけなら, sort から uniq で終わり.


ただし sort で大量にメモリが必要になったりとてつもなく時間がかかったりするかもしれない.
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

・・・自分の未熟さが肌にしみました。
RTFMですね。

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

お礼日時:2011/01/07 16:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!