2

最近我开始尝试使用 eyeD3 来管理我的大量 MP3 收藏。

使用 Linux 上的命令行('BASH')我想根据这种结构向 MP3 添加注释:

1
号线 2
号线 3号线

所以我需要插入一个换行符。我尝试了我能想到的任何东西:

/r、/n、$0A(十六进制)和 HTML 中的常规换行符。

没有任何效果。

我四处搜索,但找不到任何涉及相同问题的相关搜索结果。虽然我认为这不会那么困难。

有人知道我应该使用什么吗?

4

1 回答 1

4

eyeD3 可以在注释中包含换行符。任何用于在注释字符串中嵌入换行符的 shell 方法都可以使用。以下是三个例子:

方法 1:在纯引号中使用实际的换行符

实际的换行符可以嵌入在纯引号中:

$ eyeD3 --comment=":Rating:This is
> an even
> better
> song" file.mp3

方法二:从多行文件中读取注释

假设我们有这个文件;

$ cat comment.txt
This is
the best
song of
a lifetime

我们可以像这样将该注释放在 mp3 文件中:

$ eyeD3 --comment=":Rating:$(cat comment.txt)" file.mp3

方法3:使用$'...'

要将多行注释添加到 mp3,一种选择是用于$'...'保存换行符:

eyeD3 --comment=$':Rating:This is\nthe best\nsong ever' file.mp3

完成后,我们可以显示多行注释以验证它是否已正确保存:

$ eyeD3 file.mp3 

file.mp3        [ 16.78 KB ]
-------------------------------------------------------------------------------
Time: 00:07     MPEG2, Layer III        [ ~16 kb/s @ 11025 Hz - Mono ]
-------------------------------------------------------------------------------
ID3 v2.4:
title:          artist: 
album:          year: None
track:  
Comment: [Description: Rating] [Lang: eng]
This is
the best
song ever

$'...'当您想在一行输入上写注释时, 该结构效果很好。$'...'除了换行符之外,还支持许多其他特殊字符。

$'...'需要bash.

于 2014-11-24T05:47:13.120 回答