2017-09-15 15 views
0

私はC:\MP3\AudioBooks\The Idea Factoryフォルダ内のすべてのmp3ファイルのテンポを上げようとしています。私は成功を収めて、thusly任意の個々のファイル操作を行うことができます。フォルダ内のすべてのmp3を操作する方法は?

sox --show-progress "C:\MP3\AudioBooks\The Idea Factory\002.mp3" "C:\MP3\AudioBooks\The Idea Factory\speedy\002.mp3" tempo 1.3 

しかし、私はループCMDラインで迷子になってるロジック:

FOR %%I in ("C:\MP3\AudioBooks\The Idea Factory\*.mp3") DO (
    echo %%I 
    echo %~pI 
    echo %~nI 
) 

あなたは、私はちょうど今のエコーをやって見ることができます入力パスに基づいて出力パスを変更する方法がわからず、2番目と3番目のエコーステートメントが吹き飛ばされます。 1つ目の作品です。

フォルダパスの入力を受け入れる最も簡単な方法は、そこにあるすべてのmp3ファイル(サブフォルダはなく、mp3s)をループし、出力mp3はspeedyサブフォルダに入ります。

答えて

1

はおそらく:

For %%I In ("C:\MP3\AudioBooks\The Idea Factory\*.mp3" 
) Do sox --show-progress "%%I" "%%~dpIspeedy\%%~nxI" tempo 1.3 
+0

数秒私の前に...私は '使用する代わりに、'の "%%〜FI" ' "%% I"'を示唆しています。完全修飾ファイル名を取得するだけです。 – Stephan

+0

@Stephanは、OPがソースディレクトリの完全修飾パスを使用していなかったので、実際には%%〜fIを使用していましたが、そのように完全に不要に見えました – Compo

+0

ありがとうございました! – HerrimanCoder

関連する問題