Формирование списка файлов

Тема в разделе "Софт", создана пользователем Satan, 15 янв 2014.

  1. Satan

    Satan

    Сообщения:
    162
    Симпатии:
    338
    Делал для себя, но решил сюда выложить, может кому то поможет.

    Описание:
    Данная программа создает список всех файлов, конечных папок (или файлов + конечных папок*), которые находятся в папке из которой запустили программу, и сохраняет этот список в текстовый файл

    Применение:
    Задумывалась для удобства создания download листов, когда вы добавляйте на сервер кучу моделей и музыки и вам приходится путь до каждого файла писать вручную. Программа автоматизирует этот процесс.

    Есть возможность создать список файлов используя фильтр (Допустим нужны только .mp3 файлы). // В версии 1.1 данная функция отсутствует и будет добавлена позднее.

    Инструкция:

    1. Собрать все файлы для описи в одну папку, рядом с ними разместить саму программу

    [​IMG]

    2. Запустить программу, выбрать необходимый тип описи (Поставить галочки)

    [​IMG]

    3. Нажать кнопку "Создать список"

    [​IMG]
    [​IMG]

    4. В случае успеха активируются кнопки "Открыть список" и "Копировать в буфер обмена"
    - Кнопка "Открыть список" откроет список файлов в текстовом редакторе, который у вас выбран по умолчанию
    - Кнопка "Копировать в буфер обмена" скопирует содержимое FileList.txt в буфер для вставки (ctrl + v)

    [​IMG]


    Примечание к опции "Ставить завещающий слэш" (только для описи конечных папок):
    Опция включена: models/player/hlmod/
    Опция отключена: models/player/hlmod

    Внимание: все слэши автоматически заменяются на наклоненные вправо ( / )


    Отчет с virustota для версии 1.0:
    https://www.virustotal.com/ru/file/36dae7af2673fe71fd7faf0124a0e6f00275b45b876b1a4ac43157f369f17e92/analysis/1389791603/

    Отчет с virustota для версии 1.1:
    https://www.virustotal.com/ru/file/07199751a1c6ee4a166290f74c8fa3697a17905ed4956811965dc23885229a50/analysis/1390411293/
    * Про ситуацию с антивирусом Panda в курсе, пытаюсь понять, что ему не понравилось.


    Если будут ошибки - сделайте скриншот ошибки и отправьте его либо в ЛС, либо оставьте комментарий в данной теме.


    Контрольная сумма SHA256 для версии 1.0: 36dae7af2673fe71fd7faf0124a0e6f00275b45b876b1a4ac43157f369f17e92
    Контрольная сумма MD5 для версии 1.0:


    Контрольная сумма SHA256 для версии 1.1: 07199751a1c6ee4a166290f74c8fa3697a17905ed4956811965dc23885229a50
    Контрольная сумма MD5 для версии 1.1: 1e65b26b768c9d594ebadab6397c54ca

    * Конечная папка - это папка, в которой нет других папок (В данной программе поиск работает по такому алгоритму)
    Прошу тех, кому программа покажется бесполезной и т.д. оставить свои комментарии при себе :yes:

    Новая версия в архиве с названием CssFileLinkManager
     

    Вложения:

    Последнее редактирование: 22 янв 2014
  2. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
    Вроде тоже нечто подобное NikFileTree?
     
  3. Satan

    Satan

    Сообщения:
    162
    Симпатии:
    338
    ☆★☆БАТЯ☆★☆™, нечто похожее, но более компактное
     
  4. Konstantin

    Konstantin

    Сообщения:
    1.789
    Симпатии:
    767
    Прога незаменима, если имеешь дело со скинами, трейлами и подобной канителью!
    Правда, для того же Шопа FrozDark постарался, и абсолютные пути там указывать не надо!
     
  5. Satan

    Satan

    Сообщения:
    162
    Симпатии:
    338
    Если эта программа действительно найдет пользователей, допишу в неё новые полезные функции
     
  6. kapellan

    kapellan

    Сообщения:
    33
    Симпатии:
    4
    спасибо за работу! нужна вещь)
     
  7. Satan

    Satan

    Сообщения:
    162
    Симпатии:
    338
    Сделал более удобную и функциональную версию, обновил шапку.

    Прошу протестировать и отписаться о результатах, т.к. могут быть проблемы с версией Net Framework (Необходима 4.0 и выше)
     
    debiloid и Konstantin нравится это.
  8. debiloid

    debiloid

    Сообщения:
    150
    Симпатии:
    118
    Неплохая программа. Удобно. Маленькая критика, если автор не против. Хорошо бы прикрутить гуй.
    Могу написать оболочку. Если заинтересовало - ЛС.
     
  9. Reiko1231

    Reiko1231 AlexTheRegent

    Сообщения:
    237
    Симпатии:
    569
    Код:
    @echo on>out.txt
    @echo off
    setlocal enabledelayedexpansion
    set "parentfolder=%CD%"
    for /r . %%g in (*.*) do (
      set "var=%%g"
      set var=!var:%parentfolder%\=!
      echo !var! >> out.txt
    )
    Пользуюсь таким простеньким batch файлом под windows, выполняет аналогичные функции. Кидаю батник к файлам, запускаю, получаю out.txt со всеми файлами, находящимися в папке + подпапках.
    [​IMG]

    Имеет место быть и такое решение, раз уж говорится о компактности.
     
    Konstantin, Satan, CTe6eJIeK_vRn и 2 другим нравится это.
  10. Satan

    Satan

    Сообщения:
    162
    Симпатии:
    338
    Reiko1231, да, тоже неплохой вариант. Всяк лучше, чем руками составлять
     
  11. MFS

    MFS

    Сообщения:
    1.309
    Симпатии:
    537
    dir /s /d >a.txt

    плюсы - быстро и недолго запомнить

    минусы - пихает в пути все пути, начиная с диска (в редакторе решается за 2 нажатия кнопок)

    для списков файлов без путей dir /b >a.txt


    Обратите внимание, для дозаписи нескольких списков в 1 файл используйте >> вместо >
     
    CTe6eJIeK_vRn нравится это.
  12. CTe6eJIeK_vRn

    CTe6eJIeK_vRn Супер-модератор

    Сообщения:
    2.014
    Симпатии:
    1.798
    linux:
    PHP:
    #!/bin/bash
    ls out.txt                                    # очищаем файл out.txt
    find * -type f | while read j; do
    echo 
    "$j>> out.txt                            # выводим список файлов с путями в файл
    done
    sed 
    -"/^slist.sh$/d;/^out.txt$/d" "out.txt"   # исключаем файл out.txt и slist.sh из списка
    #sed -i "s/$/\//" "out.txt"                     # раскомментируйте для добавления завершающего слеша "/" в конце
     
    Satan нравится это.
  13. TolikCorp

    TolikCorp

    Сообщения:
    855
    Симпатии:
    271
    Вот эта конструкция find * -type f -print >> out.txt
    вместо
    find * -type f | while read j; do
    echo "$j" >> out.txt
    уже не катит?

    да и воще
    ls > out.txt # очищаем файл out.txt
    find * -type f | while read j; do
    echo "$j" >> out.txt

    заменяется этим
    find * -type f -print > out.txt
     
    CTe6eJIeK_vRn нравится это.
  14. Kudemus

    Kudemus

    Сообщения:
    48
    Симпатии:
    6
  15. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Внесу маленькую поправочку. Для find надо первым делом указать путь, где искать.
    Аля find /home/user -type f ....
    Иначе поиск будет в текущем каталоге.
     
  16. PatishkaVaga

    PatishkaVaga

    Сообщения:
    1
    Симпатии:
    0
    Акад хранит список из четырех последних открывавшихся в нем файлов.
    Есть ли возможность сделать этот список длиннее? Если да то как?