2009-08-05 7 views
2

私はcsvを処理してソートを簡単にしようとしています。時間とダッシュを取り除く必要があります。は、CSVファイルから時間を取り除くのに助けが必要です

James,07/20/2009-14:40:11 
Steve,08/06/2006-02:34:37 
John,11/03/2008-12:12:34 

し、この中にそれを解析:

James,07/20/2009 
Steve,08/06/2006 
John,11/03/2008 

sedを推測イムは、この仕事のための適切なツールです?ファイルには、このようなエントリを持っていますか

ご協力いただきありがとうございます。

答えて

1
cut -d '-' -f 1 file 

コメントの後の編集:

sed 's/-[0-9][0-9]:[0-9][0-9]:[0-9][0-9]//g' file 
+0

名前にダッシュが含まれている場合はどうなりますか? – nmuntz

+0

名前がAl-Ashradのようなものなら、出力はAlになります。間違っています。それを指摘してくれてありがとう。私はそれに応じて編集した。 –

1

は、Python

import csv 
import datetime 

rdr = csv.reader(open("someFile.csv", "rb")) 
rows = list(reader) 
rdr.close() 

def byDateTime(aRow): 
    return return datetime.datetime.strptime(aRow[1], "%m/%d/%Y-%H:%M:%S") 

rows.sort(key= byDateTime) 

wtr = csv.writer(open("sortedFile.csv", "wb")) 
wtr.writerows(rows) 
wtr.close() 
0

ちょうどはい、私はSEDは、仕事のための適切なツールだと思うのawk

awk -F"," '{ split($2,_,"-"); print $1,_[1] }' OFS="," file 
0

を使用します。

 
sed 's/-[:0-9]*$//' file 
関連する問題