2016-04-06 15 views
0

dosコマンドプロンプトで次のコード(別のトピックから取られたもの)をバッチファイルを使用して、.txtファイルのファイル名を使用して.mkvファイルの名前を変更します。ただし、.txtファイル名にスペースが含まれていると、名前を変更したファイルはスペースの後のすべての文字を省略します。例えば。 'movie.txt'は正常に動作しますが、 'movie.txt'はうまく動作しません。彼らはそれぞれ 'movie.mkv'と 'the.mkv'というファイルを生成します。別のファイルタイプのファイル名に基づいてファイルの名前を変更

@echo off 
setlocal enabledelayedexpansion 

:: This assumes there is only one mkv file in the folder 
for /F %%A in ('dir /b *.txt') do (
set basename=%%~nA 
ren *.mkv !basename!.mkv 
) 

誰でも手助けできますか?興味がある人々のために事前に

おかげで、 リチャード

+0

は、二重引用符を使用します。http://ss64.com/nt /syntax-esc.html – JosefZ

答えて

0

は、ここに私が見つけたソリューションです:

@echo off 
setlocal enabledelayedexpansion 

:: This assumes there is only one mkv file in the folder 
for /F "delims=" %%A in ('dir /b *.txt') do (
set basename="%%~nA" 
ren *.mkv !basename!.mkv 
) 

よろしく、 リチャード

関連する問題