Teile aus Text extrahieren (bash)

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
arteist
Beiträge: 728
Registriert: 20.05.2002 17:26:23
Kontaktdaten:

Teile aus Text extrahieren (bash)

Beitrag von arteist » 27.05.2003 17:35:20

Hallo,

also ich bin gerade dabei ein Bash-Skript zu entwickeln, und darin brauche ich die id3-tags einiger Dateien. Um diese zu extrehieren gibt es ja id3v2 bzw ogginfo, allerdings weis ich nicht, wie ich diese Ausgaben weiterverwerten kann. Konkret würde ich gerne einfach nur den Inhalt bestimmter Felder zurückbekommen. Wie stelle ich das am besten an?

Die Ausgabe sieht so aus:

Code: Alles auswählen

Processing file "/home/moritz/mucke/tocotronic/kook/tocotronic - kook - 01 - kook.ogg"...

New logical stream (#1, serial: 4e5028e8): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: Xiph.Org libVorbis I 20020717 (1.0)
Channels: 2
Rate: 44100

Nominal bitrate: 192,000000 kb/s
Upper bitrate not set
Lower bitrate not set
User comments section follows...
        title=kook
        artist=tocotronic
        album=kook
        date=0
        tracknumber=01
        genre=Rock
        comment=mp3archive by momo
Vorbis stream 1:
        Total data length: 3444097 bytes
        Playback length: 2m:26s
        Average bitrate: 188,339245 kbps
Logical stream 1 ended

#####################

moritz@rechengnom:/tmp/mucke/seeed/new dubby conquerors/tmp$ id3info 01\ -\ Seeed\ -\ Dancehall\ Caballeros.mp3

*** Tag information for 01 - Seeed - Dancehall Caballeros.mp3
=== TIT2 (Title/songname/content description): Dancehall Caballeros
=== TPE1 (Lead performer(s)/Soloist(s)): Seeed
=== TALB (Album/Movie/Show title): New Dubby Conquerors
=== TYER (Year): 2002
=== TRCK (Track number/Position in set): 1
=== TCON (Content type): (16)
*** mp3 info
MPEG1/layer III
Bitrate: 256KBps
Frequency: 44KHz
Ansätze, so dass ich mich durch manpages wühlen kann, sind auch erwünscht. Mir fehlt gerade nur leider jeglicher Ansatz!
there are only 10 types of people: those who understand binary and those who don't.

Benutzeravatar
hupf
Beiträge: 113
Registriert: 20.06.2002 21:15:44
Wohnort: Biel/Bienne, CH

Beitrag von hupf » 27.05.2003 19:04:45

hi

sieht mir nach heftiger textarbeit aus...
vielleicht könntest du dein ding besser mit perl lösen, das ist sehr mächtig, was das bearbeiten von text angeht. eventuell könntest du deine information mit regular expressions parsen...
bash scripts sind halt sehr primitiv und bieten wenig möglichkeiten.

aber leider kann ich dir mit perl nicht weiterhelfen... bin selbst erst am rumpröbeln.

gruss, hupf

Benutzeravatar
fragsausen
Beiträge: 137
Registriert: 21.12.2002 23:02:30
Wohnort: Ratingen

Beitrag von fragsausen » 27.05.2003 20:10:02

hallo,

du kannst z.b. mit grep nach festen expressions z.b. "=== TALB" suchen.
dann schnibbelst du mit cut das aus der zeile raus, was du haben willst.

Antworten