2010-12-05 4 views
0

tsvファイルをmysql dbにインポートしようとしていますが、新しい行の開始位置を特定するためのファイルに固有の区切り文字がないので問題があります。一意の唯一の識別子は、日付の後ろに時間とスペースが続くものです。例:6/19/2010 16:04:43bashスクリプトでどのように解析するのですか?date_value _space_ date_value

誰かが正しい方向に私を指し示すか、その文字列の前にセミコロン";"を置くbashスクリプトを作成してもらえますか?したがって、最終結果は;6/19/2010 16:04:43

です。このファイルでは、他の日付フィールドと他の時間フィールドがありますが、これは2つの間にスペースを持つ唯一の文字列です。

答えて

1

cat file | sed 's#[0-9]\{1,2\}/[0-9]\{1,2\}/[0-9]\{4\} #;&#g' >resultfile。使用する前にテストしてください。

+0

このスクリプトは、上記の場合、日付スペース時間にぴったりです。ただし、文字列の形式が日付タブ時間である場合を除きます。第2のシナリオを取り除く方法はありますか? – Igor

+0

@ user493071更新を参照してください。スペースを入れる。 – khachik

+0

ほぼ完璧ですが、何らかの理由で一部の文字列に触れられていません。 例:6/5/2010 17:00:30 7/3/2010 16:53:50 あなたは何らかの理由があると思いますか? – Igor

関連する問題