2010-12-27 28 views
9

Tôi đang tìm cách cho phép tôi lấy các trường cụ thể từ thẻ ID3 từ các tệp mp3.Lấy các trường cụ thể từ thẻ ID3 bằng công cụ dòng lệnh?

Tất cả các công cụ tôi đã tìm thấy cho đến nay đều trả về tất cả các trường và chúng cũng định dạng chúng để "đọc dễ dàng hơn". Tôi chỉ cần một số trường và được định dạng khác (nghệ sĩ \ talbum \ ttitle \ n) cho mục đích báo cáo.

Có công cụ nào như vậy không? Tôi rất thích công cụ cho phép tôi xuất các giá trị riêng biệt từ ID3v1 và ID3v2.

Trả lời

8

id3v2 -R nghe giống như những gì bạn muốn. Debian tên gói là ID3v2, thượng nguồn là http://id3v2.sourceforge.net/

Từ manpage:

-R, --list-rfc822 
      Lists using an rfc822-style format for output 

Ví dụ:

$ id3v2 -R 365-Days-Project-04-26-sprinkle-leland-w-the-great-stalacpipe-organ.mp3 

Filename: 365-Days-Project-04-26-sprinkle-leland-w-the-great-stalacpipe-organ.mp3 
TALB: Released independently through Luray Caverns 
TPE1: Leland W. Sprinkle 
TIT2: The Great Stalacpipe Organ 
COMM:()[eng]: � 2004, Copyright resides with the artist, The 365 Days Project, and UbuWeb (http://ubu.com)/PennSound (http://www.writing.upenn.edu/pennsound/). All materials at UbuWeb/PennSound are available for free exchange for noncommerical purposes. 
365-Days-Project-04-26-sprinkle-leland-w-the-great-stalacpipe-organ.mp3: No ID3v1 tag 
+0

nó sẽ là tốt, nhưng vấn đề là nó chỉ hoạt động với v2. Đó là công cụ đối ứng (chương trình id3), có tùy chọn -R, nhưng không in bất cứ thứ gì với nó: ( –

+1

@depesz: Đối với chương trình 'id3', bạn cần phải cung cấp cho nó' -l -R', sau đó nó sẽ (chỉ là '-R' là không đủ) – derobert

0

Cách dễ nhất là tạo tập lệnh bash.

grep các trường được công cụ của bạn trả về để bạn chỉ nhận được những trường bạn muốn. Sau đó, bạn sử dụng awk (nếu bạn biết cách sử dụng nó), hoặc cut, v.v.

Nếu bạn cung cấp cho chúng tôi định dạng được sử dụng bởi một trong những công cụ bạn tìm thấy, chúng tôi có thể giúp bạn viết. Định dạng đơn giản hơn, kịch bản càng đơn giản.

+0

Tôi muốn tránh sử dụng grep/AWK/sed - bởi vì nó dẫn đến khó vấn đề -find trong trường hợp các ký tự không chuẩn. –

Các vấn đề liên quan