Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
devenge
9 / 9 / 2
Регистрация: 11.11.2011
Сообщений: 208
1

Ошибка при работе с файлами, имена которых содержат пробелы

11.10.2012, 22:40. Просмотров 971. Ответов 3
Метки нет (Все метки)

Данный код изменяет размер картинок в текущей папке. Но если в названии картинки есть пробел, то эта картинка игнорируется. Как это можно исправить?

Bash
1
2
3
4
5
6
7
@echo off
set pict=*.png,*.jpg,*.ico,*.gif
set size=50
MD %size%
for /f %%i in ('dir %pict% /b /a:-d') do (
  convert %%i -resize %size% %size%/%%~ni%%~xi
)
p.s. convert — команда ImageMagick
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2012, 22:40
Ответы с готовыми решениями:

Удаление из заданного каталога всех текстовых файлов, имена которых содержат 4 или 5 символов
Помогите сделать задачу на командной строке win. Как удалять файлы я знаю, а вот как определить...

Найти все файлы, имена которых содержат букву "а", и скопировать их в отдельный каталог
Здравствуйте, столкнулся с задачкой. Нам необходимо найти все файлы содержащие в себе букву "а" и...

Перенос файлов в папки, имена которых содержат часть названия файла или расширение файла
Здравствуйте! Прочитал все похожие темы про ВАТ, но все в кучу сложить не смог, так как очень слабо...

Вывести на экран файлы, имена которых содержат только русские или только английские символы
Подскажите пожалуйста, как в командной строке вывести на экран файлы содержащие только русские...

FileGetAttr возвращает -1 при работе с файлами, имена которых содержат кириллицу
Программа пишется в лазарус. Есть вот такая процедура: procedure...

3
Dragokas
Эксперт WindowsАвтор FAQ
17105 / 7160 / 861
Регистрация: 25.12.2011
Сообщений: 10,955
Записей в блоге: 16
12.10.2012, 00:33 2
Такой путь должен быть заключен в парные кавычки.
Bash
1
2
3
4
5
6
7
@echo off
set pict=*.png,*.jpg,*.ico,*.gif
set size=50
MD "%size%"
for /f %%i in ('dir %pict% /b /a:-d') do (
  convert "%%i" -resize %size% "%size%/%%~ni%%~xi"
)
В строке № 6 слеш в правильную сторону смотрит?
0
devenge
9 / 9 / 2
Регистрация: 11.11.2011
Сообщений: 208
12.10.2012, 00:42  [ТС] 3
не получается. пробовал с кавычками и без них. и со слешем в разные стороны.

Картинка 123455.jpg изменяется в размерах, а 12345 5.jpg игнорируется.

Bash
1
2
3
4
5
6
7
@echo off
set pict=*.png,*.jpg,*.ico,*.gif
set size=50
MD "%size%"
for /f %%i in ('dir %pict% /b /a:-d') do (
  convert "%%i" -resize %size% "%size%\%%~ni%%~xi"
)
0
Dragokas
Эксперт WindowsАвтор FAQ
17105 / 7160 / 861
Регистрация: 25.12.2011
Сообщений: 10,955
Записей в блоге: 16
12.10.2012, 01:40 4
Лучший ответ Сообщение было отмечено ComSpec как решение

Решение

Нужно было указать пустой разделитель:
Bash
1
2
3
4
5
6
7
@echo off
set pict=*.png,*.jpg,*.ico,*.gif
set size=50
MD "%size%"
for /f "delims=" %%i in ('dir %pict% /b /a:-d') do (
  convert "%%i" -resize %size% "%size%\%%~ni%%~xi"
)

Не по теме:

Вы ведь в предыдущих темах писали правильно.
Видимо мне не хватило времени Вам объяснить. Поднял старую тему.

1
12.10.2012, 01:40
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2012, 01:40

Ошибка при работе с файлами
Вечер добрый! Есть код: string test; StreamReader rr =...

Ошибка при работе с файлами
Sub â_ïðîåêòèðîâàíèå() If Dir(ActiveWorkbook.Path & "\Google Äèñê\Projects\" &...

Ошибка при работе с файлами
не могу разобраться procedure TForm1.BitBtn1Click(Sender: TObject); var...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.