作者zyxwvoklove (天行者)
看板Linux
標題[問題] 用bash補文字檔中空位
時間Tue Mar 10 11:02:59 2015
屙 小弟不才
又來問問題
今天類似有一個檔案這樣
(簡單縮小化 實際是一個頗大的檔案)
1234 1.00 0.44 521
2348 123
0897 0.92 0.12 886
2111 0.23 0.38 589
這邊有一些空格是沒有資料
在某一些程式讀取他們時
會導致被順向補位而跑出錯誤資料
想要在空格中補上0
變成這樣
1234 1.00 0.44 521
2348 0 0 123
0897 0.92 0.12 886
2111 0.23 0.38 589
請問這要用awk的什麼寫出
還是其他command??
搞得一頭霧水中
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.160.237.176
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Linux/M.1425956583.A.DD5.html
1F:推 jokester: 怎樣決定在哪列補0? 03/10 11:19
2F:→ zyxwvoklove: well 嚴格說來 檔案很大 就是會一些沒有資訊被空白 03/10 11:25
3F:→ zyxwvoklove: 總不能一個一個看然後補0 是在想有沒有command做到把 03/10 11:25
4F:→ zyxwvoklove: 整個檔案中類似這樣情形都補上0 03/10 11:25
5F:→ carylorrk: 都是固定 align 好的?用 vim 取代空格可以嗎 03/10 11:27
6F:→ carylorrk: 像是每格最多 6 個 character,那就把 6 個空格取代成 03/10 11:29
7F:→ carylorrk: 0 + 5 個空格 03/10 11:29
8F:→ carylorrk: 如果每個 column 不同,可以用 visual block 選起來XD 03/10 11:32
應該是align好的
因為我用awk '{print $2,$3}' filename
就print出
1.00 0.44
0.92 0.12
0.23 0.38
※ 編輯: zyxwvoklove (118.160.237.176), 03/10/2015 11:36:09