該程序將輸入文件作爲參數。該文件包含整個月份的數據。它包含每天的銷售數據,明顯由虛線分隔。將每天的數據(日期明智)保存在單獨的文件中,並比較該文件的總數
程序應該將每一天的數據(日期明智)保存在一個單獨的文件中。 我寫了一個需要所有內容的代碼。
它用不同的日誌文件存儲明智的內容,但我需要日期明智地存儲到不同的日誌文件。我怎樣才能做到這一點 ?任何建議?
awk -F' ' '{filename=$1".log";print>filename;close(filename)}' input_file
這是輸入文件:
Date: 01-01-2007
CPU 3 7098 22394
Monitor 2 6500 13000
Mouse 20 300 6000
Total: 41394
---------------------------------------------------
Date: 04-01-2007
Keyboard 10 700 7000
Ethernet-Card 48 900 43200
Total: 50020
---------------------------------------------------
<again some data here …>
而且,數據必須進行協調(比較)來查看所有的計算是否都很好,沒有數據被篡改,也就是說,它應該通過再次總量添加文件中存在的單個項目價格。當總數不匹配時,它應該在日誌文件中寫入一條錯誤消息,清楚地說明哪一天的數據存在問題。 這是我的代碼,如下所示: awk'NF & & NR> 1 & & $ 0!〜/ total:/ {r = $ 2 * $ 3; V =(V!= 「」)? v「+」r:r; if(r!= $ 4){things_er [$ 1] = r「而不是」$ 4「err_t + = $ 4;噸+ = R; $ 4 = r} 但它不是打印錯誤消息,也不能確定其正確比較總數。
它仍然給你發佈inpu噸文件片段 – RomanPerekhrest
這是輸入的文件:日期:2007年1月1日 CPU 監視器2 6500 13000 鼠標20 300 6000 總計:41394 ------------- -------------------------------------- 日期:04-01-2007 鍵盤以太網卡48 900 43200 合計:50020 ------------------------------------ --------------- <在這裏再次輸入一些數據...> – Sylvester
不在註釋中 - 移動到問題並應用格式 – RomanPerekhrest