請教一下awk的問題... - Linux

Table of Contents

Hi 小弟初碰awk 想問一些問題

我有一個log長這樣

時間 USER 行為 檔案路徑 檔案大小 速度
16:40 aaa download /abc/a.txt 0 0

我現在用awk 只想要時間 行為 檔案路徑 檔案大小

awk '{print $1 $3 $4 $5}'


但是我發現檔案路徑中如果有空格....就會亂掉
因每一個檔案路徑也不太相同 目前還沒想 到用什麼方法來達成

想請問各位有什麼方法嗎?



--

All Comments

Noah avatarNoah2014-05-17
假設不限awk,用支援()的正規式是可以做到,或寫個c(or php)
程式去剖析也是辦法
Ethan avatarEthan2014-05-18
換個角度想,把第二跟最後一個參數去掉
Ethan avatarEthan2014-05-20
中間是tab還是空白分隔?試試FS設成tab就好
Megan avatarMegan2014-05-24
硬幹 awk '{printf $1 " ";
Christine avatarChristine2014-05-28
for(i=3;i<NF-1;i++)printf $i " ";
print $i}'
Elvira avatarElvira2014-05-30
用golang寫一個parser
Wallis avatarWallis2014-06-03
or python
Eartha avatarEartha2014-06-04
對於有多變的資料有我寧可花點時間寫 也不太想用shell解這問
Edward Lewis avatarEdward Lewis2014-06-06
http://stackoverflow.com/questions/5536018/how-to-get-mat
ch-regex-pattern-using-awk-from-file
狂熱者玩法
Kumar avatarKumar2014-06-07
先用sed把檔案的空白取代掉,再用awk印?最後用sed再換回
Wallis avatarWallis2014-06-10
awk '{ $2=""; $NF=""; print $0 }'
Frederica avatarFrederica2014-06-12
awk好難..