Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
r1sh
0 / 0 / 0
Регистрация: 09.02.2015
Сообщений: 27
#1

Группировка файлов в каталогах - CMD/BAT

09.02.2015, 15:47. Просмотров 332. Ответов 3
Метки нет (Все метки)

Всем привет!

Есть структура папок:

archive
|
+2014-Apr-01
|
+2014-Apr-02
|
+2014-Apr-03


Нужно все файлы в папках переместить в каталог соответcтвующий формату 2014-Apr

Я написал скрипт:

Код
chcp 1251
setlocal enabledelayedexpansion
set input=d:\arch
set output=d:\test
set h="string"
mkdir %output%\2014
mkdir %output%\2014\2014-Jan
mkdir %output%\2014\2014-Feb
mkdir %output%\2014\2014-Mar
mkdir %output%\2014\2014-Apr
mkdir %output%\2014\2014-May
mkdir %output%\2014\2014-Jun
mkdir %output%\2014\2014-Jul
mkdir %output%\2014\2014-Aug
mkdir %output%\2014\2014-Sep
mkdir %output%\2014\2014-Oct
mkdir %output%\2014\2014-Nov
mkdir %output%\2014\2014-Dec
for /f %%i in ('dir /b %input%\') do (
for /f %%j in ('dir /b %input%\%%i\"#msgs"\') do (
ren %%j %%i_%%j
)
set h=%%i
move %input%\%%i\#msgs\* %output%\2014\%h:~0,8%\
)
проблема в том, что значение переменной h после set h=%%i все равно остается "string"

Подскажите пожалуйста с чем связана проблема?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2015, 15:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Группировка файлов в каталогах (CMD/BAT):

Поиск новейших версий файлов из одноимённых файлов, находящихся в двух каталогах, и перенос найденных в третий
Здравствуйте. Возникла необходимость в создании кода на batch, который делает...

Обработка pdf файлов в каталогах с подкаталогами
К примеру в каталоге c:\dir1 и его подкаталогах находятся pdf файлы. Их...

Поиск файлов в каталогах, проверка в ахивных дерриториях
Доброго времени суток! Помогите написать bat ничек, для следующих целей: -...

Удаление файлов нулевого размера в каталогах и подкаталогах
Добрый вечер. Нужна помощь в корректировке маленького скрипта: @Echo Off...

Поиск и вывод строк из файлов в нескольких каталогах
Всем привет! Есть 23 каталога (6501-6523), в каждом каталоге есть...

Найти и вывести имена одинаковых файлов в двух каталогах
Здравствуйте! Помогите пожалуйста решить такую задачу: Никак не могу...

3
ComSpec
3400 / 1945 / 627
Регистрация: 26.02.2014
Сообщений: 1,457
09.02.2015, 16:08 #2
Лучший ответ Сообщение было отмечено r1sh как решение

Решение

Bash
24
move %input%\%%i\#msgs\* %output%\2014\!h:~0,8!\
1
r1sh
0 / 0 / 0
Регистрация: 09.02.2015
Сообщений: 27
09.02.2015, 16:50  [ТС] #3
спасибо заработало!!! блин а почему??? о_О
0
ComSpec
3400 / 1945 / 627
Регистрация: 26.02.2014
Сообщений: 1,457
09.02.2015, 17:09 #4
Лучший ответ Сообщение было отмечено r1sh как решение

Решение

Цитата Сообщение от r1sh Посмотреть сообщение
а почему???

Потому что переменные, задаваемые внутри цикла, должны расширяться не с помощью символов процента, а с помощью восклицательных знаков при обязательном включении отложенного расширения переменных ("setlocal enabledelayedexpansion"), что у Вас, кстати, в коде есть.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2015, 17:09
Привет! Вот еще темы с решениями:

Найти имена файлов, которые присутсвуют в первом и втором каталогах.
Помогите написать .bat программу :( В двух каталогах указан первым и вторым...

Список всех файлов в каталогах, пути к которым указаны в параметрах
Написать bat-файл, который бы выводил на экран список всех файлов в каталогах,...

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

Удаление в заданных каталогах всех файлов и каталогов, указанных в виде списка, занесенного в текстовый файл
Создайте командный файл, который удаляет все файлы и каталоги, в заданных...


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

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

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