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 

Перемещение файлов вместе с содержимым каталога
Goto page Previous  1, 2, 3  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Tue May 08, 2012 16:56    Post subject: Reply with quote

Flasher wrote:
Какая разница с чего начинать, если нужны все типы?
Все типы файлов которые по смыслу могут быть связаны с htm(html) файлами: например gif, png, css и другие. Мне кажется, что создавать скрипт ради одноразовой, - конкретной задачи, не имеет смысла, поэтому Я и пытаюсь объяснить, что ситуация с пропущенными htm(html) файлами, возникает довольно часто, мой случай лишь разовый пример, и если речь идет о создании "универсального инструмента" - ориентироваться нужно на файлы htm(html) типов.
Quote:
А счётчик чем плох?

А если имена в начале каталогов имеют цифровое обозначение? например 1_11..[a-z],11_2..[a-z] то как они будут выглядеть?
Quote:
При автоматическом переименовании папок? Да ну?

Если брать простой пример, - все нужные файлы лежат в одном катологе, - то, да , согласен. А если есть взаимосвязь с корневой папкой, например таблица стилей
Code:
../../../style.css
или связь с другим контентом, в аналогичном виде? Поэтому, Я и упоминаю что прежде, чем использовать автоматический режим, нужно все проверить, и иногда скопировать вручную.
Quote:
Если не разбивать подкаталоги по критерию наличия в их корнях всех указанных типов, то тогда будут возникать дубликаты по структуре...Т.е. уже 2 дубликата. Зачем они?

Именно, из за возможности взаимосвязи между уровнями, как Я уже упомянул, в таблицах стилей, и других файлов. При таком варианте, сразу будет видно, есть связь или нет. Поясню: достаточно открыть файл htm, например в каталоге "Папка 2"и посмотреть, - если вид документа изменен, значит есть взаимосвязь с каталогом "Папка 1" или более верхними каталогами.
Quote:
Это тут к чему? У меня написано 3. "Мои документы 2" (3 расш.)
Так ведь здесь в начальном варианте указанно (2 расш.)
Quote:
Например, была такая структура:
1. "Мои документы" (3 расш.) > 2. "Мои документы 1" (2 расш.) > 3. "Мои документы 2" (3 расш.) > 4. "Мои документы" (3 расш.) > 5. "Мои документы" (3 расш.)

Поэтому, Я подумал, что после срабатывания скрипта 2 изменилось на 3, другими словами, в каталоге "Мои документы 1" - появилось еще одно непонятное расширение, (возможно это опечатка?)
Quote:
А почему тогда сразу не помещать в такие папки html-шаблоны?
Можно и так, но для этого, нужно быть провидцем, - знать что отсутствуют совпадающие имена (htm) файлов, видеть всю структурную взаимосвязь файлов между собой, и иметь в наличии "супер скрипт" корректирующий содержание каждого htm шаблона, перед его размещением в соответствующие каталоги. К сожалению, Я таким "инструментом" не располагаю, поэтому пользуюсь таким способом.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue May 08, 2012 17:21    Post subject: Reply with quote

shveicar wrote:
если речь идет о создании "универсального инструмента" - ориентироваться нужно на файлы htm(html) типов
"Чем дальше в лес, тем больше дров." Я прежде всего ориентировался по этим словам:
shveicar wrote:
Моя задача - найти каталоги с полным "комплектом" (наличие в каталоге всех трех типов файлов)
Теперь всё изменилось?

shveicar wrote:
А если имена в начале каталогов имеют цифровое обозначение? например 1_11..[a-z],11_2..[a-z] то как они будут выглядеть?
Смотря как задавать счётчик. Берём привычное переименование со скобками "Имя (№)". Зависимость "_№" тут отсутсвует, т.е. счётчик будет добавляться к новым именам.

shveicar wrote:
Если брать простой пример, - все нужные файлы лежат в одном катологе, - то, да
С чего бы только простой? Берётся каталог на любом уровне и при наличии одноимённого в получателе перемещается с переименованием.

shveicar wrote:
Именно, из за возможности взаимосвязи между уровнями
Из-за чего это происходит меня не волнует. Мне нужно узнать, что делать в итоге - и только. Разбивать или дублировать?

shveicar wrote:
Так ведь здесь в начальном варианте указанно (2 расш.)
Это указано для Мои документы 1, а не 2. См. внимательней.
shveicar wrote:
возможно это опечатка?
В моём случае опечаток нет. 2-я папка пропускается при 2-х расширениях, в то время как необходимы 3.

shveicar wrote:
Можно и так, но для этого, нужно быть провидцем, - знать что отсутствуют совпадающие имена (htm) файлов, видеть всю структурную взаимосвязь файлов между собой, и иметь в наличии "супер скрипт" корректирующий содержание каждого htm шаблона, перед его размещением в соответствующие каталоги.
Бывают ситуации, когда такой "супер скрипт" проще изготовить, чем промежуточный, не говоря о том, что это даёт конечных результат, что упрощает вопрошающему задачу. Провидцем быть не надо, Имена легко запомнить в коллекции. Правка шаблона может оказаться легче, чем до сих пор неясная рассортировка каталогов. Я предлагаю расписать в новой теме задачу, а там я уже решу, что легче.
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Tue May 08, 2012 18:43    Post subject: Reply with quote

Flasher wrote:
Теперь всё изменилось?

Нет, просто проблема развернута глубже, - найти каталоги с полным "комплектом" (наличие в каталоге всех типов файлов при условии нахождения в них файлов htm,html) и переместить/копировать их, вместе со всем содержимым на другую панель.
Quote:
Смотря как задавать счётчик

Если имена будут выглядеть так 1_11..[a-z](1).расширение - то нормально.
Quote:
Разбивать или дублировать?

Пусть будет разбивка.
Quote:
Правка шаблона может оказаться легче, чем до сих пор неясная рассортировка каталогов
Даже если предположить, что возможно создать скрипт, - для замены блоков текста в тегах,(с поддержкой регулярных выражений) в каждом из перечисленных в файле списке имен, и блоки текста будут браться из отдельного текстового файла. Всё равно, придется изначально обнаружить каталоги, - где они (htm файлы) отсутствуют. Отдельным скриптом, - воссоздать в них файлы пустышки, с именами родительских каталогов, загнать их имена - в файл список для первого скрипта, и только затем, - раскидать модифицированные htm(html) шаблоны с заменой файлов пустышек. (это всего лишь, один из возможных вариантов).
Об этом, Я не могу просить, поскольку, некоторые задания (скрипт для замены блоков текста), не имеют прямого отношения к total commander...
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue May 08, 2012 19:01    Post subject: Reply with quote

shveicar wrote:
Нет, просто проблема развернута глубже, - найти каталоги с полным "комплектом" (наличие в каталоге всех типов файлов при условии нахождения в них файлов htm,html) и переместить/копировать их, вместе со всем содержимым на другую панель.
Брррр... Если речь идёт о полном комплекте, то и так понятно, что html там фигурируют. Отсутствие любого из расширений уже исключает обработку. И не со всем содержимым, а только с файлами из корней. Или опять всё поменялось?


shveicar wrote:
сё равно, придется изначально обнаружить каталоги, - где они (htm файлы) отсутствуют.
И что? С этим никогда проблем не было.
shveicar wrote:
Отдельным скриптом, - воссоздать в них файлы пустышки
Зачем отдельным? Confused
shveicar wrote:
Об этом, Я не могу просить, поскольку, некоторые задания (скрипт для замены блоков текста), не имеют прямого отношения к total commander...
Обработка выделенных элементов - уже по сути касается файлового менеджера. А что будет в скрипте делаться дополнительно - дело третье.
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Tue May 08, 2012 19:58    Post subject: Reply with quote

Flasher wrote:
Отсутствие любого из расширений уже исключает обработку. И не со всем содержимым, а только с файлами из корней. Или опять всё поменялось?

Все правильно, больше ничего меняться не будет.
Извиняюсь, за неточную формулировку.
С остальными вариантами, относящимися к созданию дополнительных скриптов, нужно будет еще раз все продумать.
Спасибо за помощь.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue May 08, 2012 20:02    Post subject: Reply with quote

shveicar wrote:
С остальными вариантами, относящимися к созданию дополнительных скриптов, нужно будет еще раз все продумать.
Только не скриптов, а скрипта. Жду тогда формулировки. А там решим.
Back to top
View user's profile Send private message
l-Roon



Joined: 27 Dec 2013
Posts: 2

Post (Separately) Posted: Fri Dec 27, 2013 17:31    Post subject: Reply with quote

В общем каталоге 'Музыка' имеется несколько (несколько сотен) папок, каждая из которых содержит ряд аудио-файлов. В одной папке могут быть ogg, в другой mp3, в третьей flac, в чётвертой ape и т.д. Но в каждой из папок содержатся аудио-файлы только одного формата. Кроме этих файлов каждая папка содержит информацию об альбоме в виде файлов txt, doc, jpeg, pdf.
Вопрос: возможно ли задать условия перемещения таким образом, чтобы папки с mp3 (например) перемещались в общий каталог 'MP3' целиком, то есть, со всем содержимым (как с собственно музыкой, так и с дополнителными файлами)?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Dec 27, 2013 19:44    Post subject: Reply with quote

l-Roon wrote:
возможно ли задать условия перемещения таким образом ...
Конечно, возможно. Достаточно в каждой папке проверять число отфильтрованных по расширению файлов, если их больше 1, то перемещать в папку с именем найденного расширения.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
l-Roon



Joined: 27 Dec 2013
Posts: 2

Post (Separately) Posted: Sat Dec 28, 2013 01:54    Post subject: Reply with quote

Flasher, а Вы не могли бы подсказать -- как именно это сделать?

Upd: вопрос снят, на другом сайте подсказали готовый скрипт:

Code:
@ECHO OFF
SET R="0"
FOR /R %%A IN ("*.mp3") DO (
call :1 "%%~dpA"
)
goto :eof
:1
SET R=%1
move /Y "%R:~1,-2%" "d:\music\mp3"
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Sat Dec 28, 2013 19:32    Post subject: Reply with quote

Code:
@echo off &setlocal enableextensions
::   http://forum.wincmd.ru/viewtopic.php?p=104462#104462
::   Параметры:   "%WL"
set Ext=MP3 OGG FLAC APE AAC M4A WMA

for /f "delims=" %%d in ('type "%~1"') do call :E "%%d"
goto :eof

:E
title %1
pushd %1
for %%e in (%Ext%) do (
   for /f "delims=" %%f in ('dir /b/a-d *.%%e 2^>nul') do (
      cd .. &md %%e 2>nul
      move /y "%~1." %%e &&goto :eof
   )
)
goto :eof
Back to top
View user's profile Send private message
AmeKs



Joined: 12 Feb 2016
Posts: 37

Post (Separately) Posted: Sat May 14, 2016 16:36    Post subject: Reply with quote

А можно как-то осуществлять следующую операцию? При перемещении папки/файла проверяется, есть ли одноименный файл с разрешением inf в каталоге, где находится наша папка/файл -> если есть, то перемещать и его тоже.
Например, перемещаем файл abc.exe
если в каталоге есть abc.inf, то перемещаем и его тоже.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon May 16, 2016 17:11    Post subject: Reply with quote

AmeKs >>>
Code:
'================================= VBS ==================================
' Перемещение выбранных файлов совместно с находящимися в том же каталоге
' и имеющими одно базовое имя в соответствии с заданной маской расширений
'
' Условие:   путь запуска - пустой
'
' Параметры: %WL "<путь назначения>" <маска расширений>
' Пример:    %WL "%T" *.inf;*.ini
'========================================================================
With WScript.Arguments
  If .Count = 0 Then WScript.Quit
  List = .Item(0) : Path = .Item(1) : Exts = .Item(2)
End With : Set FSO = CreateObject("Scripting.FileSystemObject")
Set Shell = CreateObject("Shell.Application")
Set Items = Shell.NameSpace(FSO.GetAbsolutePathName("")).Items

Set Path = Shell.NameSpace(Path)
With FSO.OpenTextFile(List,,,-1)
  Do : F = Trim(.ReadLine)
    Items.Filter 73952, FSO.GetFileName(F) & ";" &_
    Replace(Exts,  "*", FSO.GetBaseName(F))
    Path.MoveHere Items, 8
  Loop Until .AtEndOfStream : .Close
End With

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Fri May 20, 2016 10:24; edited 2 times in total
Back to top
View user's profile Send private message
AmeKs



Joined: 12 Feb 2016
Posts: 37

Post (Separately) Posted: Mon May 16, 2016 21:48    Post subject: Reply with quote

Flasher Спасибо большое, работает. Но хотелось бы, чтобы в случае отсутствия одноименного файла, наш исходный файл перемещался. А при нынешнем раскладе ничего не происходит. Буду очень признателен, если скрипт будет работать аналогично и для папок.
Впринципе, моя цель - хранить некоторые комментарии вместо файла descript.ion в отдельных файлах, которые бы перемещались при перемещении файлов/каталогов. Как-то так. Confused
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue May 17, 2016 00:33    Post subject: Reply with quote

AmeKs wrote:
Буду очень признателен, если скрипт будет работать аналогично и для папок.
Так в папках, как правило, расширения не задаются. Question Ладно, сделал. Но проблемой будет то, что все выбранные папки, где в имени есть точка, будут также перемещены.
AmeKs wrote:
вместо файла descript.ion
Из-за Юникода, поди?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2563

Post (Separately) Posted: Thu May 19, 2016 15:12    Post subject: Reply with quote

Flasher wrote:
Но проблемой будет то, что все выбранные папки, где в имени есть точка, будут также перемещены.

Из-за этого обстоятельства не хотелось бы делать исключение. Пусть перемещаются, коли выбраны!
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
Goto page Previous  1, 2, 3  Next
Page 2 of 3

 
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