2012年5月3日 星期四

用 awk 做 split 及寫入兩個檔案

grep MED ../../complaints_data | awk 'BEGIN{FS="###"} {if(NR%5!=0) print $1 > "model.1.train" ;else print $1 > "model.1.test"} '

awk 條件{動作}
FS:分隔字元
NR:目前處理"第幾行"
awk 的 {動作} 裡可以用 if else,
每處理到 5 的倍數行,寫入 test,其餘寫入 train
if 及 else 之間要 ; (分號)
{動作} 裡如果有 2 行以上的動作用 ; 分開

沒有留言:

張貼留言