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
shveicar



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

Post (Separately) Posted: Tue May 08, 2012 01:11    Post subject: Воспроизведение полной структуры корневой папки Reply with quote

Здравствуйте.
Хочу проконсультироваться.
Есть такой скрипт или второй (не создающий множества черных окон, при работе) вариант
Меня интересует, возможность обратного варианта, - то есть, создание полной структуры, со всеми вложенными файлами нулевого размера и исходными расширениями, - указанными в текстовом файле с полными путями.
Поясню, для чего это нужно:
при совместной разработке сайтов, создание структурных баз, иногда для обмена информацией, особенно если структура большая - удобно пересылать такие вот контейнеры (минимального размера, но с наглядной структурой) или даже просто, (при условии найденного решения) текстовые файлы, с полной структурой главного каталога, с возможностью последующего воссоздания.
Кроме того, иногда при обработке сайта, удобно сначала воспроизвести полностью его структуру, а затем уже, постепенно её заполнить нормальными файлами, далее при проверке, можно сразу найти файлы нулевого размера и устранить "пробелы".
Спасибо.


Last edited by shveicar on Tue May 08, 2012 23:10; edited 1 time in total
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 01:15    Post subject: Reply with quote

shveicar wrote:
Меня интересует, возможность обратного варианта
А где тут обратный вариант? Задача вроде бы аналогичная, только вместо %L пишется путь к списку.
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 02:04    Post subject: Reply with quote

Quote:
Задача вроде бы аналогичная, только вместо %L пишется путь к списку

Да это работает, (но с первым скриптом) только структура становиться другой, не такой как в файле списке. Да это ведь легко проверяется, берем структуру, создаем файл список, и в новой папке воспроизводим, - результаты разные. Для создания файла списка, использую копку
Code:
TOTALCMD#BAR#DATA
%ComSpec%
/c type "%L" >"%T\1filelist.txt"
%COMMANDER_PATH%\ico\74.ico
Список файлов в противоположной панели(полный путь)

1
-1

Или у Вас другой результат?


Last edited by shveicar on Tue May 08, 2012 23:11; edited 1 time in total
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Tue May 08, 2012 07:41    Post subject: Reply with quote

Quote:
Для создания файла списка, использую копку
...
type "%L" >"%T\1filelist.txt"
это список выделенного, а не полная структура.
Ищи другую кнопку, напр. в http://forum.wincmd.ru/viewtopic.php?t=13736
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 16:01    Post subject: Reply with quote

Tol!k wrote:
это список выделенного, а не полная структура

Позвольте возразить, если перед созданием файла списка с помощью этой кнопки, через поиск отобразить все, то создается самый подробнейшей список, со всеми каталогами и файлами. Другое дело, что после воссоздания из этого файла списка, - появляются лишние файлы, которые приходиться удалять в ручную.
Непонятно, откуда они берутся, если в путях файла списка, в таком ракурсе - их нет.
Code:
G:\3\12_mesjatsev\
G:\3\aibolit\
G:\3\alenk_tsvetochek1\
G:\3\12_mesjatsev\12_masjatsev1.jpg
G:\3\12_mesjatsev\12_mesjatsev.htm
G:\3\12_mesjatsev\12_mesjatsev.swf
G:\3\12_mesjatsev\12_mesjatsev02.htm
G:\3\12_mesjatsev\12_mesjatsev02.swf
G:\3\aibolit\aibolit.htm
G:\3\aibolit\aibolit.jpg
G:\3\aibolit\aibolit.swf
G:\3\alenk_tsvetochek1\alenk_tsvetochek1.htm
G:\3\alenk_tsvetochek1\alenk_tsvetochek1.swf
G:\3\alenk_tsvetochek1\alenk_tsvetochek3.htm
G:\3\alenk_tsvetochek1\alenk_tsvetochek4.htm
G:\3\alenk_tsvetochek1\alenki_tsvetochek.jpg
G:\3\alenk_tsvetochek1\alenki_tsvetochek2.jpg
G:\3\alenk_tsvetochek1\alenki_tsvetochek3.jpg
G:\3\alenk_tsvetochek1\alenki_tsvetochek4.jpg
Вот простой пример списка из трех каталогов, в каждый из которых,- вложены файлы.
А вот исходная структура оригинал и результат (после воспроизведения).
Возможно дело в самом скрипте, и как избавиться от необходимости каждый раз, указывать в параметрах новый путь к списку,
то есть, - сделать так, чтобы работала схема - файла списка под курсором?
Буду признателен за помощь, - ответов пока не нашёл,
Спасибо.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sat May 26, 2012 20:16    Post subject: Reply with quote

shveicar wrote:
не создающий множества черных окон, при работе
Если почитать концовку темы с первым скриптом, то там всё тоже элементарно решается без всяких чёрных окон.
shveicar wrote:
с полной структурой главного каталога
Что есть главный каталог? Корень диска?
shveicar wrote:
Да это ведь легко проверяется, берем структуру, создаем файл список, и в новой папке воспроизводим, - результаты разные.
В первом скрипте обрабатывается каталог списка и его вложения с воспроизведением структуры относительно рабочего каталога.

shveicar wrote:
/c type "%L" >"%T\1filelist.txt"
Кр. - лишнее.
Back to top
View user's profile Send private message
shveicar



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

Post (Separately) Posted: Mon May 28, 2012 19:58    Post subject: Reply with quote

Здравствуйте.
Flasher wrote:
Если почитать концовку темы с первым скриптом

Согласен, - способ действительно помог.
Quote:
Что есть главный каталог?

В моем понимании главный каталог - тот в котором находятся все нужные папки.
Проблема первого скрипта в том, что он не всегда срабатывает, - в отличие от второго. До внесения в него изменений,- наблюдалось тоже самое. То есть несколько раз скрипт выполнялся, а затем просто переставал работать. Пока так и не понял с чем это связанно.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Tue May 29, 2012 10:44    Post subject: Reply with quote

shveicar wrote:
До внесения в него изменений,- наблюдалось тоже самое.
А после внесений?
shveicar wrote:
То есть несколько раз скрипт выполнялся, а затем просто переставал работать.
Речь идёт о выделенной папке или файле-списке? Если файле, то, возможно, проблемы в самом файле, например, в его кодировке.
Back to top
View user's profile Send private message
shveicar



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

Post (Separately) Posted: Fri Jun 08, 2012 23:58    Post subject: Reply with quote

Здравствуйте, наконец проблема решена (Спасибо Andrey_A)
Работает как часы.
Code:
' CreateStructureFileList.vbs
'========================   Описание   ============================
' Создание пустой структуры из файл списка
'=======================   Параметры  ============================
' 1-й параметр: список файлов\папок
' 2-й параметр: куда\сохранять\пустую\структуру
'========================   Примеры   ============================
' %P%N %t    - создание структуры из списка под курсором
' "Путь\к\списку.txt" %p
' %L %t - создание структуры выделенного

' Автор:             Аверин Андрей
' Версия:          1.1 (08.06.2012)
' Mail:                 Averin-And@yandex.ru
' Site:                  http://tc-image.3dn.ru/forum/3-496-2034-16-1339174881
'===============================================================
Set FSO = CreateObject("Scripting.FileSystemObject")
With WScript
   Cnt = .Arguments.Count
   If Cnt > 0 Then
     Set tFile = FSO.OpenTextFile(WScript.Arguments(0), 1)
     If Cnt > 1 Then
       tPath = .Arguments(1) : If Not FSO.FolderExists(tPath) Then .Quit
       If Right(tPath,1) = "\" Then : tPath = Left(tPath, Len(tPath) - 1)
     End If
   End If
End With

Do While Not tFile.AtEndOfStream
   Line = tFile.ReadLine : n = InStr(Line, ":\")
   If n > 0 Then Line = Mid(Line, 4)
   NewPath = tPath & "\" & Line
   CreateFolderInPath(NewPath)
   If Not FSO.FolderExists(NewPath) Then FSO.CreateTextFile(NewPath)
Loop
CreateObject("WScript.Shell").Popup "Структура успешно создана!", 1, "Структура", 64
Set FSO = Nothing : Set tFile = Nothing : WScript.Quit

Sub CreateFolderInPath(FF)
   With CreateObject("Scripting.FileSystemObject")
     If InStr(FF, "%") > 0 Then FF = GetPath(FF)
     If Len(.GetExtensionName(FF)) > 0 Then FF = .GetParentFolderName(FF)
     If Not .FolderExists(FF) Then
       Drive = .GetDriveName(FF)
       If .DriveExists(Drive) Then
         F = Split(FF, "\") : FL = Drive
         For cr = 1 To Ubound(F)
           FL = FL & "\" & F(cr) : If Not .FolderExists(FL) Then Call .CreateFolder(FL)
         Next
       End If
     End If
   End With
End Sub

Возможно кому-то пригодиться
Спасибо.
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