2010-07-09 2 views
1

У меня есть следующий пакетный сценарий из Википедии:Batch: Удалить строку из строки

@echo off 
    for /R "C:\Users\Admin\Ordner" %%f in (*.flv) do (
    echo %%f 
) 
pause 

я узнал, что here%%~nf возвращает только имя файла без расширения. Теперь я просто хотел удалить (Video) с именами файлов (%%~nf). Как я мог это сделать?

ответ

3

Попробуйте это:

@echo off 
for /R "C:\Users\Leniel\Desktop\BatchTest" %%f in (*.flv) do (
    call :Sub %%~nf 
    ) 

:Sub 
set str=%* 
set str=%str:(Video)=% 
echo %str% 
pause 

Взгляните на следующую ссылку, чтобы узнать об удалении подстроки с использованием строки подстановки:

http://www.dostips.com/DtTipsStringManipulation.php#Snippets.Remove

+0

я взял уже на вид, но %% е, кажется, не быть таким же, как, например, для % Ул% – Poru

Смежные вопросы