2015-09-19 105 views
0

我已經在這個論壇上搜索,但沒有能夠識別我在找什麼。 IRC不允許具有空格的文件的DCC。如何爲文件夾中的所有MP3/FLAC文件創建一個用下劃線替換空格的批處理文件。 我試過,但失敗了CMD用下劃線替換空格

@echo off 
Setlocal enabledelayedexpansion 
Set "Pattern= " 
Set "Replace=_" 
For %%a in (*.mp3) Do (
Set "File=%%~a" 
Ren "%%a" "!File:%Pattern%=%Replace%!" 
) 
Pause&Exit 

它給我的文件正在被另一個進程雖然文件沒有使用任何程序錯誤,現在沒有做任何事情時,我只要運行它,它說「按任意鍵繼續並關閉」

任何幫助? 謝謝。

+1

嘗試將'Set'行更改爲'Set'文件= %%〜nxa「',因此只存儲文件名;然後,將'Ren'行中的''%% a''改爲'「%%〜fa」'以提供命令的完整路徑;所有這些排除了與路徑有關的麻煩...... – aschipfl

回答

0

rename命令前用echo進行檢查。它應該工作。

但是如果你得到the files are being used by another process。這當然是這種情況。

這可能是一個應用程序阻塞關閉,應用程序隱藏在系統託管,Windows搜索索引器。
重新啓動或註銷計算機可能會解決。

@echo off 
setlocal enabledelayedexpansion 
set "pattern= " 
set "replace=_" 
for %%a in (*.mp3) do (
    set "file=%%~nxa" 
    echo Ren "%%~fa" "!file:%pattern%=%replace%!" 
    ::pause 
) 
pause 
exit /b 0 
相關問題