作者ffrr (冰色太陽)
看板Linux
標題[問題] 請問cat讀取資料該如何統計分類呢?
時間Tue Oct 27 22:53:34 2009
請問各位版友 有辦法將cat讀取的資料做統計分類嗎?
例如有4個文字檔都只有一行 ( 1.txt 2.txt 3.txt 4.txt )
txt檔的內容可能在任何位置包含空白
1.txt的內容(沒有空白)
"ABC"
2.txt的內容(中間空白)
"A C"
3.txt的內容(前後空白)
" AB "
4.txt的內容(無內容無空白)
""
想取得類似下面的資訊
共有A,B,C 三個
A出現3次
B出現2次
C出現2次
請問用script該如何寫呢?
還請版友給個hint指點一下
我找到解答了
cat *.txt |tr '\n' ' '|sed 's/ //g'|sed 's/[^$]/&\n/g'|sort|uniq -c| sort -r
--
在平行的世界中,兩顆心跳是最遠的距離!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.123.128.18
※ 編輯: ffrr 來自: 122.123.128.18 (10/27 22:56)
→ ffrr:我有想到一個做法是將3個文字合併後用uniq -c 計算 取出最大 10/27 23:33
→ ffrr:不過還是算不出來最大的那個 XD 10/27 23:34
推 icewm:不懂你為什麼特別強調空白? 10/28 01:14
→ icewm:cat *txt|grep A|wc -l 10/28 01:14
→ icewm:A, B,C各grep一次就好啦 10/28 01:15
→ ffrr:抱歉沒有解釋清楚1.txt的內容 可能是AAC有重復的狀況 10/28 22:01
→ ffrr:用wc -l 需要將每個txt檔內的每個字元都單獨一行 才能計算? 10/28 22:04
→ icewm:cat *txt|grep -o A|wc -l 10/29 10:13
※ 編輯: ffrr 來自: 122.123.130.159 (10/30 00:16)