Имя папки на три уровня выше в групповом переименовании
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Автоматизация Total Commander

#1: Имя папки на три уровня выше в групповом переименовании Author: mvrhtq PostPosted: Tue Jan 31, 2017 21:05
    —
Доброго времени суток.
При использовании инструмента группового переименования возникла потребность использовать имя родительского каталога на несколько уровней выше, а именно на уровень выше каталога [G]. Как это можно реализовать?


Last edited by mvrhtq on Tue Jan 31, 2017 22:10; edited 1 time in total

#2:  Author: FlasherLocation: Москва PostPosted: Tue Jan 31, 2017 21:18
    —
Маска: [=tc.Path]
Найти: \\([^\\]+)\\[^\\]+\\[^\\]+\\$
Заменить: $1
☑ Рег. выраж. ☑ Подстан.


Last edited by Flasher on Tue Jan 31, 2017 21:58; edited 2 times in total

#3:  Author: mvrhtq PostPosted: Tue Jan 31, 2017 21:37
    —
Flasher
Вот этот вариант:
Code:
\\(.+)\\.+\\.+\\.+$

отображает имя каталога на два выше [G], т.е. "five" в пути five/four/three/two/one. Моя цель - переименовать "one", используя в его имени "four".

Этот вариант:
Code:
\\(.+)\\.+\\.+

отображает так: five/four/three. Как его укоротить до "four"?

Ну а вариант
Code:
\\([^\\]+)\\[^\\]+\\[^\\]+$

вообще не хочет работать Sad

#4:  Author: FlasherLocation: Москва PostPosted: Tue Jan 31, 2017 21:43
    —
mvrhtq
Косяк ТС. Лучше тогда без регулярок: [=tc.path:B-E]
Где B - номер первого символа имени нужной папки, а E - последнего.
C:\One\Two\Three\Four\Five = [tc.Path:12-16]

#5:  Author: mvrhtq PostPosted: Tue Jan 31, 2017 21:51
    —
Flasher
Да, работает. Но дело в том, что я работаю не с одной общей папкой для всех, а с множеством папок, и у всех разное название и, соответственно, его длина. Общая для всех этих папок лишь структура five/four/three/two/one. В каждой есть "one", к ним я и пытаюсь применить групповое переименование.
Так что способ, завязанный на длине пути, не подходит Sad

#6:  Author: FlasherLocation: Москва PostPosted: Tue Jan 31, 2017 21:58
    —
mvrhtq
Ага. ИГП же нам не показывает, что возвращает путь с бэкслешем на конце. Добавил в первый пример.

#7:  Author: mvrhtq PostPosted: Tue Jan 31, 2017 22:06
    —
Flasher
Всё работает, большое спасибо за помощь! Rolling Eyes
Вопрос исчерпан.

#8:  Author: ВахмуркаLocation: Большая деревня Москва PostPosted: Wed Feb 01, 2017 17:02
    —
Да, исчерпан. Но суну свой пятачок...

#9:  Author: sa PostPosted: Wed Feb 01, 2017 22:32
    —
Вахмурка
Для тех, кто случайно не заметит в комментариях фразу о плагине, позволяющем вспоминать предков дальше второго колена, вот ещё старая тема со ссылкой на упомянутый тобой плагин FileX с полем для имени прадедушкина каталога [=filex.В подпапке папки] или [=filex.GtGrandPaDir].

#10:  Author: ВахмуркаLocation: Большая деревня Москва PostPosted: Wed Feb 01, 2017 22:42
    —
2sa
Это ты не мне адресуй, а топикстартеру, ведь
я, любимый wrote:
Но двигаться глубже в генеалогию файла не удается
поэтому скрипт - решение более универсальное.
Для желающих дойти до Адама (читай: корня), но при этом принципиальных противников PowerPro, есть более извращенный вариант: xxcopy с функцией flatten. Придется поковыряться с батниками и регулярками, но задача, думаю, решаемая

#11:  Author: sa PostPosted: Wed Feb 01, 2017 22:59
    —
Ну да, адресовал тебе, а написал "для тех". Sad
Просто я свой пятачок сунул в твоё корыто, у топикстартера уже всё решено, а ссылка может кому-то пригодится.
Одним словом, подписываюсь твоей подписью, что в кавычках.

#12:  Author: FlasherLocation: Москва PostPosted: Wed Feb 01, 2017 23:10
    —
Вахмурка
sa
А ничего, что тема конкретно про ИГП?
Иначе с моей стороны результат мог бы быть тоже возведён в несколько иные рамки.

#13:  Author: sa PostPosted: Wed Feb 01, 2017 23:24
    —
Flasher wrote:
тема конкретно про ИГП

Намекаешь на то, что использование в ИГП плагинов, за исключением встроенного (tc), для решения задачи возбранялось?

#14:  Author: FlasherLocation: Москва PostPosted: Wed Feb 01, 2017 23:29
    —
Ни на что не намекаю. Про рамки ИГП и говорить нечего, речь о скриптах и обсуждении спецстраниц с ними.



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group