看板 Linux 關於我們 聯絡資訊
有一筆學生與成績資料如下, 每個字串和數字都是用空格隔開, xq gg hd ws ki Jahn amber benson kilo May 35 26 08 21 11 99 76 73 86 32 90 51 89 55 80 想要用搜尋找到 benson 還有 May 的特定學生關鍵字, 然後把 benson 和 Mar 相對應底下第2, 3 行(固定特定行數)的數字取出來, 變成 benson May 08 11 73 32 存成新檔, 請問這樣要有辦法寫嗎? 謝謝. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.8.119 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1462701190.A.ABF.html
yogi: 用pandas比較快 05/08 18:07
rickieyang: 一定要用 shell script 的話,先行列轉置,之後再印出 05/08 18:14
rickieyang: 你要的欄位 05/08 18:14
n3oanderson: cat x | awk 'BEG{count=0}{if(0!=count&&8!=count){ 05/08 18:22
n3oanderson: print $3 "\t" $5} count+=1}' 05/08 18:23
heyk1: 轉置看起來很棒, 能否請在詳細束束一下作法? 05/08 19:27
heyk1: 位置3 和 5 的數字, 有沒有辦法靠程式自動判斷, 搜尋得到? 05/08 19:28
heyk1: 因為學生名字關鍵字會改變. 謝謝. 05/08 19:29
rickieyang: 我想原 po 應該不是要這樣寫死的方式 05/08 20:04
rickieyang: 我是說樓上上... 05/08 20:05
rickieyang: 帶全家出遊,還沒回到家. 晚點再回. 05/08 20:05
rickieyang: 先問一下,第一行的 xq gg 那個是什麼意思? 05/08 20:11
heyk1: 您講的是對的~ 不要寫死. 05/19 23:42
heyk1: xq gg hd ws ki 表示相對應學生的姓氏 05/19 23:44