[問題] 請問cat讀取資料該如何統計分類呢?

看板Linux作者 (冰色太陽)時間14年前 (2009/10/27 22:53), 編輯推噓1(107)
留言8則, 2人參與, 最新討論串1/1
請問各位版友 有辦法將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)

10/27 23:33, , 1F
我有想到一個做法是將3個文字合併後用uniq -c 計算 取出最大
10/27 23:33, 1F

10/27 23:34, , 2F
不過還是算不出來最大的那個 XD
10/27 23:34, 2F

10/28 01:14, , 3F
不懂你為什麼特別強調空白?
10/28 01:14, 3F

10/28 01:14, , 4F
cat *txt|grep A|wc -l
10/28 01:14, 4F

10/28 01:15, , 5F
A, B,C各grep一次就好啦
10/28 01:15, 5F

10/28 22:01, , 6F
抱歉沒有解釋清楚1.txt的內容 可能是AAC有重復的狀況
10/28 22:01, 6F

10/28 22:04, , 7F
用wc -l 需要將每個txt檔內的每個字元都單獨一行 才能計算?
10/28 22:04, 7F

10/29 10:13, , 8F
cat *txt|grep -o A|wc -l
10/29 10:13, 8F
※ 編輯: ffrr 來自: 122.123.130.159 (10/30 00:16)
文章代碼(AID): #1AvmbxEH (Linux)