Page 1 of 1
каталогизация папок
Posted: Sat 12 Dec, 2020 10:01
by sepr
Здравствуйте. Подскажите пожалуйста, существует ли плагин для каталогизации папок.
Очень похожий функционал в "просмотрщик .torrent файлов (Torrent Info)"
Заходим как в обычную папку, есть подпапки, у каждого файла есть размер
каталогизация папок
Posted: Mon 14 Dec, 2020 04:20
by abelenki
cmd /c chcp 65001 & dir /s> files.dir
+
Observer + модуль
Dir.so
каталогизация папок
Posted: Mon 14 Dec, 2020 12:48
by sepr
Спасибо за рецепт. Установил плагин и модуль к нему, последние версии. Но observer не видит модуль и files.dir не открывает. У вас работает?
каталогизация папок
Posted: Mon 14 Dec, 2020 13:42
by sepr
Все заработало, нужно руками в observer.ini ассоциации дописывать. Жаль только, что он все файлы из подпапок вытаскивает в "корень", а в остальном функционал такой какой нужно. Еще раз спасибо
каталогизация папок
Posted: Tue 15 Dec, 2020 08:07
by Taciturn
sepr wrote: ↑Mon 14 Dec, 2020 13:42
Жаль только, что он все файлы из подпапок вытаскивает в "корень"
На самом деле проблема dir.so в том, что он работает только с английским. Т.е. если переименовать C:\Windows\System32\ru-RU\cmd.exe.mui в cmd.exe.mui.del (ну или совсем удалить), то всё будет с подкаталогами.
Причём похоже это даже глюк, т.к. в исходниках есть пример вывода как раз на русском и он обрабатывается ещё более криво.
Написал разработчику.
каталогизация папок
Posted: Tue 15 Dec, 2020 12:16
by sepr
Taciturn wrote: ↑Tue 15 Dec, 2020 08:07
На самом деле проблема dir,so в том, что он работает только с английским
вместо cmd dir/s накидал скрипт:
Code: Select all
fldir = Path(Path().resolve().name).with_suffix('.dir')
with fldir.open('w', encoding='utf8') as F:
F.write(' Том\n Серийный\n')
for fl in Path().rglob('*'):
if fl.is_dir() or fl.suffix == '.dir': continue
F.write('\n00.00.0000 00:00{:>19,} {}'.format(fl.stat().st_size, fl))
в итоге: все по папкам разложено, dir,so юникод парсит
каталогизация папок
Posted: Tue 15 Dec, 2020 13:10
by Wave
Как его запускать?
каталогизация папок
Posted: Tue 15 Dec, 2020 15:15
by sepr
Если еще нет питона:
- идем на оф. сайт, качаем, устанавливаем
- где-нибудь создаем файл, например observedir[dot]py
- первая строка - импорт библиотеки: "from pathlib import Path"
(к сожалению не нашел как отредактировать мой предыдущий пост)
- вставляем код из предыдущего поста
Использование:
- заходим в папку из которой хотим сделать "слепок"
- запускаем скрипт: "С:/myscriptshere/observedir[dot]py"
создается файл с именем папки и расширением ".dir"
каталогизация папок
Posted: Tue 15 Dec, 2020 15:18
by 2useven10
sepr wrote: ↑Tue 15 Dec, 2020 15:15
к сожалению не нашел как отредактировать мой предыдущий пост
После 5-ти постов на форуме, повторите поиск.
каталогизация папок
Posted: Sun 02 Jan, 2022 16:51
by SMT
Для просмотра dir-файлов идеально подходит плагин ls-lR
https://plugring.farmanager.com/plugin.php?pid=634&l=ru
модуль для Observer у меня не открыл некоторые старые dir-файлы, а ls-lR идеально отработал на всех тестах + умеет открывать аналогичные слепки директорий из linux/android
каталогизация папок
Posted: Sun 13 Aug, 2023 20:25
by tlap
SMT wrote: ↑Sun 02 Jan, 2022 16:51
Для просмотра dir-файлов идеально подходит плагин ls-lR
не открывает dir-файл созданый командой
Code: Select all
cmd /u /c dir /a /s /t:W > list.dir
каталогизация папок
Posted: Mon 14 Aug, 2023 17:24
by buniak_a_h
tlap wrote: ↑Sun 13 Aug, 2023 20:25
не открывает dir-файл созданый командой
cmd /u /c dir /a /s /t:W > list.dir
Ну да, плагин не юникодный. Старенький … Увы, видимо не поддерживается.
Я писал скрипт для замены, но у него есть ограничения:
- Глючит, если hidden-папок нет в dir-файле, а вложенные в нх - есть
- Если dir-файл получен конкатенацией нескольких команд dir (например, так:
dir /s c:\ >l.dir && dir /s d:\ >>l.dir
)
- по-моему если в результате линка папок получается рекурсия.
Работа была заброшена.