INNO_SANCTUM
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Доброго времени суток. Есть задача: нужно запустить все файлы с архивным атрибутом из заданной папки, после чего архивный атрибут с этих файлов снять. Решение: Код: set pth=d:\work\a for /F "delims=~ tokens=*" %%i in ('dir /b /a:a %pth%') do ( attrib -A "%pth%\%%i" start %pth%\%%i) | Проблема: не работает с файлами, в имени которых есть пробел. При обработке, например, a b.txt оманда start в приведенном варианте пытается запустить файл с именем a, и, естественно, не находит. Казалось бы, решение тривиально - как и с командой attrib, взять параметр в кавычки. Ан нет. Команда Код: просто-напросто открывает окно cmd.exe в текущей папке. В чем беда, подскажите. Спасибо. UPD разобрался, почитал внимательней хелп. первый параметр, указанный в кавычках, рассматривается как заголовок окна. Исправил: Код: set pth=d:\work\a for /F "delims=~ tokens=*" %%i in ('dir /b /a:a %pth%') do ( attrib -A "%pth%\%%i" start "111" "%pth%\%%i") |
| Всего записей: 18 | Зарегистр. 02-06-2008 | Отправлено: 12:48 07-07-2008 | Исправлено: INNO_SANCTUM, 13:11 07-07-2008 |
|