我正在尝试将我的所有WAV文件转换为FLAC文件,使得我的FLAC音乐目录与WAV的音乐目录相同。
目前我已经设置了音乐存档,这样就可以找到典型的专辑:
/ directory1中/ directory2 / directory3目录/音乐/的 WAV /艺术家/唱片集
所以我希望我的FLAC文件的一对一对应如下:
/ directory1中/ directory2 / directory3目录/音乐/的 FLAC /艺术家/唱片集。
我知道我必须使用find
列出所有目录/子目录,如下所示:
find -type d -exec commands.sh
但是如何编写commands.sh
文件,以便它将获取WAV目录中Artist/Album
部分路径,mkdir
FLAC目录中的相同/艺术家/专辑,然后将flacs输出到FLAC / Artist / Album目录?
我知道将flacs转换为您选择的输出目录的命令是:
flac -5 --out-prefix="/desired/output/path" *.wav
所以我想我在抓取/重新创建文件路径时遇到了麻烦!
答案 0 :(得分:0)
使用ruby,perl或python等脚本语言会更加容易。这样的东西是任何一种语言中相当简单的入门项目。有查找和路径操作的库可以实现这一点 一切都很简单。
但是,有两个posix实用程序可以帮助拆分路径名。 dirname和basename。我认为那两个和sed应该让你这样做 你想要什么。
查找将始终返回相对路径,并且默认情况下,任何exec都会出现在目标的目录中,如果这不是您希望在手册页中查找的内容。您可以强制查找保留在顶级目录中。