Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Автоматическое переименование файлов до заданного числа

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Renta



Joined: 06 Nov 2009
Posts: 4

Post (Separately) Posted: Fri Nov 06, 2009 11:43    Post subject: Автоматическое переименование файлов до заданного числа Reply with quote

Есть такая задача: список фотографий, которые названы ####.jpg #### - это цифры, обозначающие код товара для сайта. Данные коды берутся из 1С, где макс. число 99999. Соответсвенно, коды для сайта идут вида 151.jpg; в 1С это будет выглядеть 00151.jpg

Таким образом нужно переименовать все фотки, добавив 0 туда где надо (до 10000). Если код вида 10000, то 0 добавлять не надо. Но вот как прописать правило для того, чтобы ТС понял, что к 10 нужно добавить три 0, а к 1000 только один? Shocked

И ещё скажите, пожалуйста, как это решение внедрить в ТС, так как только начинаю его осваивать.

Заранее спасибо за ответ Exclamation
Back to top
View user's profile Send private message
D1P



Joined: 20 Dec 2004
Posts: 2973
Location: Тбилиси

Post (Separately) Posted: Fri Nov 06, 2009 12:30    Post subject: Reply with quote

Предположим, что все файлы лежат в одном каталоге, и в Тотале включена естественная алфавитно-числовая сортировка. Т.е файлы располагаются в порядке:
1.jpg
...
9.jpg
10.jpg
...
99.jpg
100.jpg

и т.д.
Выделяем их все. Жмём Ctrl+M.
В поле "Маска" пишем [C]. В поле "Параметры счётчика [C], цифр" ставим 5.
Жмём Enter, всё.
Если исходные условия не такие, их можно к таковым привести, но это уже другой вопрос.
_________________
База знаний о Total Commander
Блог
Back to top
View user's profile Send private message
Renta



Joined: 06 Nov 2009
Posts: 4

Post (Separately) Posted: Fri Nov 06, 2009 12:35    Post subject: Reply with quote

В том-то и проблема, что файлы разбросаны по папкам!

Даже если объединить их всех в одну, то не факт, что там будут все позиции до 10000 (даже точно такого не будет). Так что такой вариант не даст результата.
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Fri Nov 06, 2009 12:57    Post subject: Reply with quote

Renta wrote:
В том-то и проблема, что файлы разбросаны по папкам!
Точнее нужно описывать условия

если объединить их всех в одну, сработает такой батник:
Code:
@echo off
for %%f in (?.jpg) do ren %%f 0000%%~nxf
for %%f in (??.jpg) do ren %%f 000%%~nxf
for %%f in (???.jpg) do ren %%f 00%%~nxf
for %%f in (????.jpg) do ren %%f 0%%~nxf
Back to top
View user's profile Send private message
Renta



Joined: 06 Nov 2009
Posts: 4

Post (Separately) Posted: Fri Nov 06, 2009 13:01    Post subject: Reply with quote

Tol!k
Простите за глупый вопрос, а как этот батник применить?
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Fri Nov 06, 2009 13:11    Post subject: Reply with quote

Сохранить код в текстовый файл, сменить расширение на .cmd
Поместить в папку с картинками и запустить.
В папке не должно быть других .jpg — они тоже будут переименованы в 00abc.jpg
Но если в твоих разбросанных папках нет других .jpg (что вряд ли), то можно запускать батник прямо на месте (другие расширения не пострадают)


Last edited by Tol!k on Fri Nov 06, 2009 13:18; edited 1 time in total
Back to top
View user's profile Send private message
Renta



Joined: 06 Nov 2009
Posts: 4

Post (Separately) Posted: Fri Nov 06, 2009 13:17    Post subject: Reply with quote

Razz Заработало! Спасибо большое Exclamation Exclamation Exclamation
Можно ещё уточнить, на каком языке программирования это написано?
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Fri Nov 06, 2009 13:28    Post subject: Reply with quote

На командном языке DOS
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2218
Location: Москва, Россия

Post (Separately) Posted: Fri Nov 06, 2009 14:13    Post subject: Reply with quote

Инструментом группового переименования можно выполнить в 2 шага с масками имени:
0000[N]
[N-5-]
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
D1P



Joined: 20 Dec 2004
Posts: 2973
Location: Тбилиси

Post (Separately) Posted: Fri Nov 06, 2009 15:12    Post subject: Папок нет, есть только каталоги! Reply with quote

Renta wrote:
В том-то и проблема, что файлы разбросаны по папкам!

Эта проблема легко решается через Ctrl+B и применением фильтра по расширению, либо, если файлы разбросаны по дискам, или в список попадают лишние файлы - через символические ссылки.
_________________
База знаний о Total Commander
Блог
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group