Страница 1 из 2

Переименование файлов по имени их папок и заданным числам

Добавлено: Сб июн 09, 2018 09:56
moonbaggi
В TC я полный 0, научился только через Ctrl + M делать переименование файлов заходя в каждую папку, а как сделать это плагином или макросом ( не знаю как правильно ) я не знаю, поэтому сильно не пинайте меня, форум Ваш читал, но все равно не понял как это делать....
Версия TC у меня 8.01 но могу поставить какую скажете.

Суть вопроса: У меня есть много папок, внутри этих папок по 8 файлов, мне нужно все эти файлы переименовать по названию их папки, и выставить порядковый номер 1-8, потом все эти файлы нужно будет переименовать по другим цифрам ( к примеру .1 - это будет -5 .2 - это будет -3 и.т.д т.е по своему порядку)

Помогите пожалуйста разобраться. Спасибо!

Добавлено: Сб июн 09, 2018 13:06
Вахмурка
Вторую часть вопроса не совсем понял. "Потом" - это когда? Почему не сразу? Что значит "по другим цифрам"? Закономерность какая-то есть? Если 1->5, а 2->3, то угадать следующий член ряда - задачка нетривиальная!
По первой части вопроса: используй поле [P] - от слова "parent", то есть родительская директория. Видимо, тебе нужна маска [P][C]. Читай справку. Удачи!

Добавлено: Сб июн 09, 2018 15:44
moonbaggi
Переименование будет иметь строгий порядок. С начало нужно по порядку переименовать все файлы которые идут в каждой папке от 1 до 8. А потом каждую порядковую цифру менять на определенную свою.
К примеру .2 на -5 .3 -2, .4 -4

C "parent" я все понял. Вопрос как сделать так чтобы переименовка произошла сразу во всех папках сразу, и мне не заходить в каждую, для переименовки?

Добавлено: Сб июн 09, 2018 15:54
Вахмурка
cm_DirBranch (Ctrl+B) выводит на панель все файлы в текущей директории, без учета поддиректорий. Выделяешь всё и потом Ctrl+M.

С продолжением ты только больше тумана напустил. Логика или закономерность в изменении имен есть? Формулу какую-то можно нацарапать?

Добавлено
Потренируйся только сперва на кошках! Перекинь несколько директорий во временную, отработай переименование, и только потом переходи к основным. А то по неопытности (и неумению читать справку) таких дров можно наломать...

Добавлено: Сб июн 09, 2018 16:01
Flasher
Вахмурка писал(а):С продолжением ты только больше тумана напустил.
Смотри, сам не напусти. Ctrl+B тут не помощник.

moonbaggi
5 тема снизу текущей страницы подфорума. Тут принято сперва искать, а не просто что-то читать.

Добавлено: Сб июн 09, 2018 16:05
moonbaggi
(Ctrl+B) далее (Ctrl+M) Тогда он у меня порядковый счетчик будет для всех файлов делать? А не от 1 до 8 ( по кол-ву файлов в папке) А мне нужно чтобы в каждой папке счетчик начинался с 1.

Как я сейчас все делаю:
1) Выделаю все папки ахапкой и переименовываю с добавлением w


2) Далее я захожу в каждую папку и делаю переименовку файлов по имени папки + счетчик


3) Далее я выделаю все файлы и начинаю переименовку делать по порядковой цифре в другую цифру "К примеру .2 на -5 .3 -2, .4 -4 "


Возможно это все прописать в 1 экшен или плагином... я не знаю как правильно, чтобы не заходить в каждую папку и не делать одни и тебе манипуляции.

P.S хотел скрины добавить но нельзя (
Спасибо за помощь!

Добавлено: Сб июн 09, 2018 16:17
Flasher
moonbaggi писал(а):Тогда он у меня порядковый счетчик будет для всех файлов делать?
В новых версиях (это никак не 8.01) будет диалог автопереименования, где счётчик в папках сбрасывается. Но в строго заданном формате <пробел>(<счётчик>), начиная с 1 или 2.

Посмотрите мой пост выше. Первый вопрос давно разобран.
Если же надо в отсортированных списках сразу писать свою рандомную нумерацию, то укажите весь список сразу. Вероятно, получится и cmd-командой обойтись.
moonbaggi писал(а):К примеру .2 на -5 .3 -2, .4 -4
Что это за замена такая?

Добавлено: Сб июн 09, 2018 16:57
moonbaggi
Если же надо в отсортированных списках сразу писать свою рандомную нумерацию, то укажите весь список сразу. Вероятно, получится и cmd-командой обойтись.
Имена файлов на старте: После переименовки имя файлов:

w123456.1 - w123456-1
w123456.2 - w123456-5
w123456.3 - w123456-2
w123456.4 - w123456-4
w123456.5 - w123456-3
w123456.6 - w123456-7
w123456.7 - w123456-6
w123456.8 - w123456-8

И так в каждой папке должны быть переименованы последние цифры.

Добавлено: Сб июн 09, 2018 17:04
Flasher
moonbaggi
Забудьте про два прохода. Тут одного достаточно.
В конечном итоге расширений у файлов не будет?
И папки избирательно выделяются? Или есть один родитель (папка активной панели) со всеми папками на обработку?
И тут ещё вопрос сортировки неясен. На пару списков исходных имён файлов в папках можно посмотреть?

Добавлено: Сб июн 09, 2018 17:22
Avada
moonbaggi
И, кстати, слова "переименовка" в русском языке нет, есть "переименование". Заголовок поправлен (все ваши критерии туда загнать не могу, но хоть в относительно приличный вид привести — и то дело).

Добавлено: Сб июн 09, 2018 18:04
moonbaggi
Спасибо что поправили, я видел что текст подчеркивается, но проигнорировал.

Как я сейчас все делаю:
1) Выделаю все папки ахапкой и переименовываю с добавлением w
https://a.radikal.ru/a37/1806/a7/8ff287046320.jpg


2) Далее я захожу в каждую папку и делаю переименовку файлов по имени папки + счетчик
https://d.radikal.ru/d38/1806/2c/1da5ba927277.jpg

3) Далее я выделаю все файлы и начинаю переименовку делать по порядковой цифре в другую цифру "К примеру .2 на -5 .3 -2, .4 -4 "
https://b.radikal.ru/b26/1806/12/000a325829b3.jpg

Добавлено спустя 3 минуты:
В конечном итоге расширений у файлов не будет?
Расширение Jpeg как было так и оставаться должно.
И папки избирательно выделяются?
Папки выделяются все.
На пару списков исходных имён файлов в папках можно посмотреть?
Скрины выложил, надеюсь поможет.

Добавлено: Сб июн 09, 2018 18:18
Flasher
moonbaggi писал(а):Скрины выложил
Лишнее всё это (да ещё в запретных размерах). Можно было просто списки перечислить.

А можно целью подобного переименования поделиться? Для чего w спереди и конкретные номера на конце? Не могу КПД уловить.

Добавлено: Сб июн 09, 2018 18:21
Avada
moonbaggi
Замечание за нарушение правил форума. И, как верно было сказано, вдобавок всё это в таком виде и не особо нужно. Картинки заменены ссылками. Больше так не делайте.

Добавлено: Сб июн 09, 2018 19:55
moonbaggi
Прошу прощения. Я просто по другому не знал как ссылки выложить.
Создаются папки именем артикула, внутри фотки данного артикула, w - так заведено. Остальные переименование - это порядок ракурсов фото.

Добавлено: Сб июн 09, 2018 23:31
Flasher
Не вышло сходу с cmd-строкой (по синтаксису верно, но там скорее косяк самой cmd), поэтому vbs:

Код: Выделить всё

'==================== VBS ===================
' Переименовать файлы внутри выделенных папок
' по их именам с добавкой - и заданного числа

' Параметр: %WL
'======== Массив подстановочных чисел =======
Arr = Array(1,5,2,4,3,7,6,8)
'============================================
If WSH.Arguments.Count = 0 Then WSH.Quit
With CreateObject("Scripting.FileSystemObject")
  Set L = .OpenTextFile(WSH.Arguments(0),,,-1)
  Do : P = L.ReadLine
    If .FolderExists(P) Then
      Set Files = .GetFolder(P).Files
      If Files.Count = UBound(Arr) + 1 Then
        i = 0
        For Each F in Files
          F.Name = "w" & .GetFileName(P) & "-" &_
          Arr(i) & "." & .GetExtensionName(F) : i = i + 1
        Next
      End If
    End If
  Loop Until L.AtEndOfStream : L.Close
End With
MsgBox Space(18) & "Выполнено!", 4160,_
" Переименование файлов внутри папок      "