如何创建bash脚本将.wav文件从文件夹[a]转换为mp3格式。然后将它们移动到新文件夹[mp3folder]

如何创建bash脚本将.wav文件从文件夹[a]转换为mp3格式。然后将它们移动到新文件夹[mp3folder],bash,audio,ffmpeg,sh,sleep,Bash,Audio,Ffmpeg,Sh,Sleep,我希望这个脚本每小时循环运行一次。主要目标是在使用Ableton时将导出到VM共享文件夹的wav文件转换 我不知道我想要什么,但需要很多帮助 根据需要更改文件路径变量、目标路径和ffmpeg命令。这对我有用 #!/bin/bash FILE_PATH=/path/to/wav/format/files/*.wav for FILE in `ls $FILE_PATH` do BASENAME=`basename $FILE` ffmpeg -i $FILE -vn -ar 44

我希望这个脚本每小时循环运行一次。主要目标是在使用Ableton时将导出到VM共享文件夹的wav文件转换

我不知道我想要什么,但需要很多帮助
根据需要更改文件路径变量、目标路径ffmpeg命令。这对我有用

#!/bin/bash

FILE_PATH=/path/to/wav/format/files/*.wav
for FILE in `ls $FILE_PATH`
do
    BASENAME=`basename $FILE`
    ffmpeg -i $FILE -vn -ar 44100 -ac 2 -ab 192k -f mp3 `dirname "${FILE}"`/${BASENAME%.wav}.mp3 > /dev/null 2>&1
    mv `dirname "${FILE}"`/${BASENAME%.wav}.mp3 /path/to/destination/
done

单一命令:

find /path/to/wav/files/ -name "*.wav" -type f | xargs -I {} ffmpeg -i {} -vn -ar 44100 -ac 2 -ab 192k -f mp3 {}.mp3

但是上面将输出文件存储为*.wav.mp3,您可能需要在移动到目标路径时对其进行重命名。

根据需要更改文件路径变量、目标路径ffmpeg命令。这对我有用

#!/bin/bash

FILE_PATH=/path/to/wav/format/files/*.wav
for FILE in `ls $FILE_PATH`
do
    BASENAME=`basename $FILE`
    ffmpeg -i $FILE -vn -ar 44100 -ac 2 -ab 192k -f mp3 `dirname "${FILE}"`/${BASENAME%.wav}.mp3 > /dev/null 2>&1
    mv `dirname "${FILE}"`/${BASENAME%.wav}.mp3 /path/to/destination/
done

单一命令:

find /path/to/wav/files/ -name "*.wav" -type f | xargs -I {} ffmpeg -i {} -vn -ar 44100 -ac 2 -ab 192k -f mp3 {}.mp3

但是上面将输出文件存储为*.wav.mp3,您可能需要在移动到目标路径时重命名它。

您可以使用Python而不是BASH来处理控制流吗?您尝试过了吗?mp3fs看起来很整洁。但在我看来,它似乎只适用于需要将其视为mp3的程序。它能把它们转换成完全可用的mp3吗?另外,我的python技能很弱,我还在培训。你能用python而不是BASH来处理控制流吗?你试过了吗?mp3fs看起来不错。但在我看来,它似乎只适用于需要将其视为mp3的程序。它能把它们转换成完全可用的mp3吗?另外,我的python技能很弱,我还在培训中,请,这里您只需要对$file\u路径中的文件执行
;做
ls
是无用和错误的!代码中还有其他问题和反模式,但至少要解决这个问题(不要使用大写变量名)。泰。对于我们这些初学者来说,我应该如何处理这个脚本,并告诉它每半小时运行一次,以便移动到该文件夹中的文件将随着时间的推移而转换。让它成为服务类型脚本?谢谢again@HaydenBeasley克朗塔布是你的朋友。将此“0,30****您的_脚本”添加到您的crontab。请确保不要使用“ls”,因为它可能会导致gniourf_gniourfwow提到的未定义行为,我应该使用crontab,这非常有用,谢谢大家。我的脚本中首先出现了一些语法错误,但使用一行程序和crontab完成了任务。我想看看advanced users脚本是什么样子的,以便像某种守护进程一样执行此任务,我觉得很多人可以将这种类型的脚本用于abelton或其他DAW程序。wav格式不能在我测试过的大多数汽车上播放。因此,对其进行转换非常重要。此外,压缩还使从我的网站下载速度大大加快。谢谢大家的支持help@HaydenBeasley不客气。投票选举我们的职位可能有助于我们未来的热情;-)请,这里您只需要对$file\u路径中的文件执行
;做
ls
是无用和错误的!代码中还有其他问题和反模式,但至少要解决这个问题(不要使用大写变量名)。泰。对于我们这些初学者来说,我应该如何处理这个脚本,并告诉它每半小时运行一次,以便移动到该文件夹中的文件将随着时间的推移而转换。让它成为服务类型脚本?谢谢again@HaydenBeasley克朗塔布是你的朋友。将此“0,30****您的_脚本”添加到您的crontab。请确保不要使用“ls”,因为它可能会导致gniourf_gniourfwow提到的未定义行为,我应该使用crontab,这非常有用,谢谢大家。我的脚本中首先出现了一些语法错误,但使用一行程序和crontab完成了任务。我想看看advanced users脚本是什么样子的,以便像某种守护进程一样执行此任务,我觉得很多人可以将这种类型的脚本用于abelton或其他DAW程序。wav格式不能在我测试过的大多数汽车上播放。因此,对其进行转换非常重要。此外,压缩还使从我的网站下载速度大大加快。谢谢大家的支持help@HaydenBeasley不客气。投票选举我们的职位可能有助于我们未来的热情;-)