我想删除嵌入在一堆 MP3(数千个)中的专辑封面,但找不到命令行方法来执行此操作。我可以通过添加艺术lame
,我可以添加或删除几乎任何其他标签id3tag
,但我可以\xe2\x80\x99t找到一种方法来做类似的事情:
for file in **/*.mp3 do <remove image command> $file; done\n
Run Code Online (Sandbox Code Playgroud)\n有人知道我可能会投入什么吗<remove image command>
?
似乎没有一个好的解决方案,我想出的最好的解决方案是使用 ffmpeg 快速创建一个新文件。@awesome14 提供的命令在我的系统上对我不起作用(大部分情况下是有效的,但它产生了许多错误,导致歌曲未被复制)。这是我想出的命令。
\nfor song in **/*.mp3\n do NAME=$(echo ${song%/*} | sed -e 's|[/ ]|-|g\xe2\x80\x99)\n ffmpeg -y -i $song -vn -c copy /path/NOART/"$NAME-"${song##*/}; \ndone\n
Run Code Online (Sandbox Code Playgroud)\n这适用于 bash5 或 zsh shell。
\n**/*.mp3
当前目录下每个目录中的每个与 .mp3 匹配的文件\n
echo ${song%/*} | sed -e 's|[/ ]|-|g\xe2\x80\x99
将路径部分(不在文件名中)中的所有斜杠\n和空格转换为破折号
\xe2\x80\x94vn -c copy
请勿复制视频(视频号),否则复制未修改的文件
/path/NOART/"$NAME-"${song##*/}
保存到路径,文件名设置为 NAME 变量和 $song 的基本名称。
输出文件名将类似于“10Cc-Look-Hear-Dressed To Kill.mp3\xe2\x80\x9d”。
\n这样做的另一个优点是不会删除歌曲中的所有元数据,仅删除 \xe2\x80\x9cvideo\xe2\x80\x9d (在本例中是专辑封面)。
\n 归档时间: |
|
查看次数: |
5495 次 |
最近记录: |