Windows скрипт для удаления пробелов из имени файла - PullRequest
0 голосов
/ 22 мая 2011

Я написал скрипт, который очищает пробелы и записывает его в консоль, но на самом деле ничего не делает с именем файла -

@echo off&setlocal EnableDelayedExpansion
for /f "tokens=*" %%A in (
'dir C:\Inetpub\ftproot\MG_REPORTS\MG_PRO_\Network\Frank\ "* *"'
) do (set XX=%%~nxA)&echo ren "%%A"  "!XX: =!"

regards,

shamie

1 Ответ

3 голосов
/ 22 мая 2011

Ваш цикл for устанавливает XX только для последнего найденного имени файла. Также он, вероятно, перебирает все файлы в данном каталоге и все имена файлов, содержащие пробелы в текущем рабочем каталоге.

Я бы сделал это следующим образом:

setlocal enabledelayedexpansion
for %%f in (C:\Inetpub\ftproot\MG_REPORTS\MG_PRO_\Network\Frank\*) do (
   set "FN=%%~nxf"
   set "FN=!FN: =!"
   ren "%%f" "!FN!"
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...