我需要一个bash脚本来执行以下操作: 针对某个文件夹中存在的每个文件以及其子文件夹中的前缀编号(4位数字)然后是分隔符( - )bash使用连续编号批量重命名文件夹和子文件夹中的文件
因此,例如,我有:
/Queen/(1986) A Kind of Magic/01.One vision.mp3
/Queen/(1986) A Kind of Magic/02.A kind of magic.mp3
/Queen/(1986) A Kind of Magic/cover.jpg
/Queen/(1991) Innuendo/01.Innuendo.mp3
/Queen/(1991) Innuendo/02.Headlong.mp3
/Queen/(1991) Innuendo/cover.jpg
/Queen/(1991) Innuendo/booklet.pdf
我想是在脚本的以下内容:
/Queen/(1986) A Kind of Magic/0001-01.One vision.mp3
/Queen/(1986) A Kind of Magic/0002-02.A kind of magic.mp3
/Queen/(1986) A Kind of Magic/cover.jpg
/Queen/(1991) Innuendo/0003-01.Innuendo.mp3
/Queen/(1991) Innuendo/0004-02.Headlong.mp3
/Queen/(1991) Innuendo/cover.jpg
/Queen/(1991) Innuendo/booklet.pdf
请注意我在文件夹名称和括号中有空格! 我该怎么做?我试图用mac automator但没有成功! :(
谢谢
好的解决方案,避免'find'和后续'sort'。但是,将所有路径名放在一个命令行中可能会导致达到262144字节的BSD“ARG_MAX”限制。估计每个路径名称的平均值为45个字节(在我自己的音乐收藏中测量...),这将发生在大约6000个文件中...... – Dario