Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - создание файла со списком файлов в папке

Ответить
Настройки темы
Любой язык - создание файла со списком файлов в папке

Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: bidjo
Дата: 07-08-2018
всем привет.
есть много папок.
в папках гигантское количество фоток.
хочу конвертировать в видео все ffmpeg-ом, но для начала надо хотя бы, что бы видео файл каждый был весом не более 8 часов. для этого надо не более 960 файлов.

скрипт
Код: Выделить весь код
@echo off
setlocal
1>nul chcp 1251
cd c:\1
(for %%i in (*.jpg) do @echo file '%%i') > mylist.txt
создает просто файл со всем добром внутри.
мне же нужно что бы создавался файл, с обьемом, например 960 файлов. ну а так как в папке десяток тысяч файлов, то нужно что бы скрипт создал несколько mylist.txt с перечнем всего этого добра, и что бы оно не повторялось
пример - 3000 файлов, с img1.jpg по img3000.jpg.
запускаю omg.bat, он создает mylist.txt 3 штуки, в каждом по N кол-во имен файлов, по алфавитному порядку, где в первом mylist.txt, например список файлов с img1.jpg по 1000, во втором mylist2.txt с img1001.jpg по 2000, в третьем с img2001 по 3000 соответственно.
файлы в реальности отличаются в названии только датой, например Ёолочка_01-05-2017_01h25m22s400ms или Будка со злой собакой_25-03-2017_00h09m48s793ms. Каждое наименование файлов лежит у себя в отдельной папке.

Отправлено: 22:07, 06-08-2018

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


bidjo, jpeg сжимать малоосмысленно. И почему
Цитата bidjo:
ffmpeg-ом, »
?

Отправлено: 23:30, 06-08-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


я неправильно выразился конвертация кучи jpg в видео.
в топикстарте инфу подправил. приношу свои извинения.

Отправлено: 09:19, 07-08-2018 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


На PowerShell:
Скрытый текст
Код: Выделить весь код
Param (
    [System.String]$sSourceFolder        = "C:\Sample",
    [System.String]$sDestFileNamePattern = 'mylist:.txt',
    [System.Int32]$iCountLimit           = 960

)

if([System.IO.Directory]::Exists($sSourceFolder)) {
    Get-ChildItem -Path "$sSourceFolder\*.*" -File -Include '*.jpg', '*.jpeg', '*.jpe' | ForEach-Object -Begin { $i = 1; $iCount = 1; $sContent = '' } -Process {
        $sContent += "file '$($_.Name)'`r`n"

        if($i -ge $iCountLimit) {
            $sResultFile = "$sSourceFolder\$($sDestFileNamePattern.Replace(":", $iCount.ToString("0000")))"
            Out-File -InputObject $sContent -FilePath $sResultFile -Encoding ASCII -NoNewline

            Write-Host "[$sResultFile] : $i file(s)." -ForegroundColor Cyan
            
            $i = 1
            $iCount++
            $sContent = ''
        } else {
            $i++
        }
    }

    if($sContent -ne '') {
        $i--
        $sResultFile = "$sSourceFolder\$($sDestFileNamePattern.Replace(":", $iCount.ToString("0000")))"
        Out-File -InputObject $sContent -FilePath $sResultFile -Encoding ascii

        Write-Host "[$sResultFile] : $i file(s)." -ForegroundColor Cyan
    }
} else {
    Write-Host "Can't find source folder [$sSourceFolder]." -ForegroundColor Red
}

Файлы никак не сортируются.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:25, 07-08-2018 | #4


Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


спасибо за ответ.
выполнил скрипт, в mylist получил file '??? ?? ????? 114_04-08-2018_21h32m16s300ms.jpg' и таких кучу.
видимо не хватает как в cmd chcp 1251 , токак как его в powershell прописывать?

Отправлено: 20:03, 07-08-2018 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата bidjo:
в mylist получил file '??? ?? ????? 114_04-08-2018_21h32m16s300ms.jpg' и таких кучу. »
Замените в двух местах:
Код: Выделить весь код
… -Encoding ASCII
на:
Код: Выделить весь код
… -Encoding 'Default'
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:19, 07-08-2018 | #6


Новый участник


Сообщения: 14
Благодарности: 0

Профиль | Отправить PM | Цитировать


danke very much! работает. спасибо

Отправлено: 09:23, 08-08-2018 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - создание файла со списком файлов в папке

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - [решено] копирование файлов при условии отсуствия файла в нужной папке batyaPS Скриптовые языки администрирования Windows 2 16-07-2017 08:54
PowerShell - Сравнение csv со списком sharepoint zaknafein Скриптовые языки администрирования Windows 1 30-01-2017 00:01
Доступ - Как заблокировать создание файла .exe в определенной папке monsteiree Microsoft Windows 2000/XP 0 03-08-2011 14:04
2003/XP/2000 - [решено] Excel | Создание поля со списком и описанием списка Drongo Microsoft Office (Word, Excel, Outlook и т.д.) 5 06-07-2011 17:24
CMD/BAT - [решено] Создание текстового файла при условии его отсутствия в папке spilberg Скриптовые языки администрирования Windows 1 12-07-2009 15:58




 
Переход