我有一個批處理腳本檔案,可將現有wav檔案轉換為 Mono wav 檔案到創建的名為“Mono”的檔案夾
代碼
@echo off && cd /d "%~dp0"
2>nul mkdir "Mono"
set "_sox=C:\Program Files (x86)\sox-14-4-2\sox.exe"
for %%i in ("*.wav") do "%_sox%" -S "%%~fi" "Mono\%%~ni.wav" channels 1
我必須將此.bat檔案放在要轉換的檔案夾中。我的檔案夾結構正在擴展,我必須手動瀏覽每個檔案夾,放置.bat檔案并運行腳本以獲取生成的單聲道檔案。
這是我的檔案夾結構的示例:
Main Folder
|
|______fold1
| |_____file1.wav
| |_____file2.wav
|
|______fold2
| |_____file1.wav
| |_____file2.wav
|
|______fold3
|_____file1.wav
|_____file2.wav
隨著擴展檔案夾結構,我想將.bat檔案放在主檔案夾中,運行腳本,腳本將遍歷每個子檔案夾,在每個子檔案夾中創建“Mono”檔案夾并將轉換后的單聲道 wav 檔案放在那里。這應該是帶有轉換后的單聲道檔案的更新檔案結構:
Main Folder
|
|______fold1
| |_____file1.wav
| |_____file2.wav
| |_____Mono
| |______file1.wav
| |______file2.wav
|______fold2
| |_____file1.wav
| |_____file2.wav
| |_____Mono
| |______file1.wav
| |______file2.wav
|______fold3
| |_____file1.wav
| |_____file2.wav
| |_____Mono
| |______file1.wav
| |______file2.wav
請讓我知道如何修改.bat檔案以完成此任務。謝謝!
uj5u.com熱心網友回復:
我會這樣做:
@ECHO OFF
SET "_sox=C:\Program Files (x86)\sox-14-4-2\sox.exe"
FOR /F "usebackq delims=" %%A IN (`DIR /B "%~dp0"`) DO (
MKDIR "%~dp0\%%A\Mono" 2> NUL
FOR /F "usebackq delims=" %%B IN (`DIR /B "%~dp0\%%A\*.wav"`) DO (
"%_sox%" -S "%~dp0\%%A\%%B" "%~dp0\%%A\Mono\%%~nB.wav" channels 1
)
)
DIR /B列出指定檔案夾中的每個檔案和檔案夾。
對于找到的每個檔案夾,它將在其中創建一個 Mono 檔案夾,然后為.wav找到的每個檔案運行 sox 命令。
希望這可以幫助。順便說一句愛你的名字
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/462626.html
