bash linux中的元数据编辑,用于linux中的多媒体文件(不是图像)

我已经搜索了stackoverflow,我一直在谷歌和duckduckgo,没有人似乎有一个很好的方式让我这样做.

似乎可能有效的唯一工具是Exiftool,它只具有ogg文件的读取能力(这是我目前正在使用的).我想通过命令行来实现这一点,因为mp3s / oggs及其名称是元数据,但元数据是空白的.我已经知道如何解析bash中的文件名,但我找不到将其重新放回文件的方法.我可以手动做这种事情,但它不值得,因为我必须手动完成.

Musicbrainz picard也没有因为一些奇怪的原因而正确标记它们,所以这就是为什么我必须这样做.

最佳答案
ID3标签是特定于MP3的.有关Ogg Vorbis注释字段规范,请参阅:Field Names

vorbiscomment(包vorbis-tools)可以修改和查询ogg标记信息.
mp3info是工作wirh mp3标签的众多工具之一.

.OGG

# Clear all info
printf ''| vorbiscomment -w  test.ogg
           vorbiscomment -l  test.ogg
# modify info
echo ========
printf 'TITLE=The Last Saskatchewan Pirate
ARTIST=Captain Tractor
ALBUM=East of Edson
DATE=2000-01-01
COMMENT=Just another TEST comment
DESCRIPTION=*** Hello ***
'|vorbiscomment -w  test.ogg
  vorbiscomment -l  test.ogg
echo ========   

输出(.ogg)

========
TITLE=The Last Saskatchewan Pirate
ARTIST=Captain Tractor
ALBUM=East of Edson
DATE=2000-01-01
COMMENT=Just another TEST comment
DESCRIPTION=*** Hello ***
========

MP3

# Delete the entire ID3 tag
mp3info -d test.mp3   
echo  ========
# modify info
mp3info -t "The Last Saskatchewan Pirate" \
        -a "Captain Tractor" \
        -l "East of Edson" \
        -g "Folk/Rock" \
        -y "2000" \
        -n "1" \
        -c "Just another TEST comment" \
        test.mp3
mp3info test.mp3
echo  ========

输出(.mp3)

========
File: test.mp3
Title:   The Last Saskatchewan Pirate   Track: 
Artist:  Captain Tractor
Album:   East of Edson                  Year:  2000
Comment: Just another TEST comment      Genre: Folk/Rock [81]

========

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...