0

awk を使用して、トラック開始時間のリストから長い mp3 の .cue シートを作成しているため、入力は次のようになります。

01:01:00-Title-Artist
01:02:00:00-Title2-Artist2

現在、操作のために開始時間、アーティスト、およびタイトルをキャプチャできるように、フィールド セパレータとして「-」を使用しています。

初回はキューシートでそのまま使えます。2 番目の時間は 62:00:00 に変換する必要があります (キュー シートは時間を処理できません)。これを行う最善の方法は何ですか?必要に応じて、入力ファイルのすべての時間の時間セクションに「00:」を強制的に含めることができますが、必要がない場合はこれを行いません。

最終的には、時間フィールドではなく 60 分を超える時間フィールドを使用して、時間、タイトル、およびアーティストのフィールドを作成したいと考えています。

4

2 に答える 2

3

たとえば、次のようにします。

$ awk -F: '{if (NF>3) $0=($1*60+$2)FS$3FS$4}1' file
01:01:00-Title-Artist
62:00:00-Title2-Artist2

:ファイルが分割に基づいて 4 つ以上のフィールドを含む場合、 1 番目と 2 番目をルールで結合し60*1st + 2ndます。FSはフィールド区切りを意味:し、最初に に設定されます。

于 2013-08-21T22:10:40.780 に答える