Re: [問題] grep的用法
※ 引述《verdd (R.V.)》之銘言:
: 各位大大 高手好 想請問各位一個grep抓資料的問題
: 我想要從資料庫裡面挑選我要的資料
: 例如我想從5筆資料裡面挑選特定3筆出來
: 資料庫的結構是這樣
: 例如
: 1 x x x x x x x x .......
: 2 y y y y y y y y.........
: 3 z z z z z z z z ........
: 4 a a a a a a a a ........
: 5 b b b b b b b b ...........
: 我想指定第1,4,5 筆資料被挑出來 包括後面那一串東西都被完整列出來
: 然後寫入result.txt檔
: 1 x x x x x x x x .......
: 4 a a a a a a a a ........
: 5 b b b b b b b b ...........
: 請問我指令該怎麼打呢? 謝謝各位指教
: grep ......... "database.txt" > result.txt
我回一個來試著回答
首先我要說原PO的問題有點模糊
我猜CP64大大也是想回文"選出來的條件是什麼"也是類似的原因
如果問題只有verdd描述的這樣幾行,那用grep sed去取就可以
但grep的用法是比對某特定字串,這裡只有3個,但要取的內容完全不一樣
而且1,4,5很容易跟內容重複
要是要取出開頭為1,4,5,9,13,22,35,57 ,咦,自動找出規律了(誤)
你用grep 解就會吃土
sed一樣,數量一多也會吃土
--
如果數字有規律,例如每3行去取
那應該可以用awk去解
事實上我覺得我打的規律1,4,5,9應該可以用awk去取
小弟不才,有沒有強者出來解一下lol
--
如果問題大到100行以上
這時候我就會選python script
但首先還是要回到你的條件
"請問你選出來的條件是什麼"
也許是一堆想找的字串或數字
假設是字串好了
我會先建個dict
然後取每行的第一個token,看看它在不在dict裡面
那請問這些東西在哪?也許在另一個檔案?
我們都不知道耶lol
--
總之,問題問得愈清楚,大家也就回答的愈清楚
--
______ |\
/ \ | \
/ ● ● \ |__\
/ ______ \ |
/ \__/ \___|
/______________\ |
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.230.221
※ 編輯: lc85301 來自: 140.112.230.221 (03/08 03:08)
討論串 (同標題文章)