重命名子文件夹
我尝试修复我的音乐文件夹,这是 iTunes 弄乱的。
所以我需要的是从以下位置移动文件的脚本:
music\Artist\Album name\Artist - title.mp3
将文件移动到
newmusic\Album name\Artist - title.mp3。
我尝试了下面的行,但没有成功。
find music -type f -exec bash -c 'ext="${0##*.}";基=“$(基名称“$0”。“$ {ext}”)”; dirs="$(目录名 "$0" | cut -d '/' -f 2,3)"; new="newmusic/${dirs}/${base}.${ext}"; cp "$0" "${new}"' {} \;
"cut -d '/' -f 2,3" 是否应该在 new="newmusic/${{dirs} cut -d '/' -f 2,3}/ 有人可以帮忙吗?提前致谢..
I try to fix my music folder, what itunes messed up.
So what I need is script to move files from:
music\Artist\Album name\Artist - title.mp3
to move files to
newmusic\Album name\Artist - title.mp3.
I tried the line below, but didin't work.
find music -type f -exec bash -c 'ext="${0##*.}"; base="$(basename "$0" ."${ext}")"; dirs="$(dirname "$0" | cut -d '/' -f 2,3)"; new="newmusic/${dirs}/${base}.${ext}"; cp "$0" "${new}"' {} \;
Does the "cut -d '/' -f 2,3" should be in new="newmusic/${{dirs} cut -d '/' -f 2,3}/
Can anyone help? Thanks in advance..
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我在这里遗漏了一些东西,还是
mv
无法实现你想要的?根据你的问题,这应该有效:Am I missing something here, or can
mv
not achieve what you want? Based on your question, this should work:技巧,只要避免“-exec bash -c”,你最终会得到不可读的过度引用保护的代码。
相反,玩:
Tricks, just avoid '-exec bash -c' you'll end up with unreadeable over-quoted-protected code.
Instead play with :
1.
cd
到您的工作目录2.
find music/Artist -type d -maxdepth 0 -exec mv {} newmusic/ \;
应该可以解决问题。如果您不想
mv
则可以将 mv 替换为cp -r
。1.
cd
to your working directory2.
find music/Artist -type d -maxdepth 0 -exec mv {} newmusic/ \;
should do the trick.If you don't want to
mv
then you can replace mv withcp -r
.