[問題] 文件內數字轉換的方法(分轉秒 時轉秒)

作者: nashsai (納許賽)   2016-04-03 23:26:31
hello
我有一個文件內容是這樣
作者: Adama (So Say We All.)   2016-04-03 23:41:00
python
作者: rickieyang (Rickie Yang)   2016-04-04 02:33:00
awk 'BEGIN{sum=0}/s$/{sum+=substr($1,1,length($1-1))}/m$/{sum+=substr($1,1,length($1-1))*60}/h$/{sum+=substr($1,1,length($1-1))*3600}END{print sum" secs"}' filename試跑五萬筆 real0m0.110s, user0m0.104s, sys0m0.003s
作者: kenduest (小州)   2016-04-04 03:10:00
perfect code
作者: lc85301 (pomelocandy)   2016-04-04 10:25:00
我大概會用python 去處理lol
作者: kira925 (1 2 3 4 疾風炭)   2016-04-04 10:32:00
ruby直接加XD
作者: kenduest (小州)   2016-04-04 10:44:00
我有回應一段Python寫法文章但是要跑比較久,刪文了程式碼 http://pastebin.com/B7CnAFBH沒有最佳化,慢。不過 python 處理字串上這類向來都不會贏 perl or awk 就是,因為非 python 專長
作者: nashsai (納許賽)   2016-04-04 15:46:00
感謝各位 我研究看看
作者: kenduest (小州)   2016-04-04 16:50:00
我那 code 寫不好,因為當初我認為可能有極巨大數值其實程式碼後續改一下用一般 float 方式記錄計算就好XD
作者: abelyang (Abel)   2016-04-14 15:11:00
for i in `cat your_file`;do echo $i |sed -e 's/m$/*60/g' -e 's/h$/*3600/g' \;done |paste -sd + |bcsed 中少了 -e 's/s$//g'
作者: rickieyang (Rickie Yang)   2016-04-16 04:45:00
為什麼 sed 都要加 g ?

Links booklink

Contact Us: admin [ a t ] ucptt.com