Войти

Показать полную графическую версию : [решено] Открытие всех файлов поочередно


kennydzzze
12-05-2015, 07:28
Здравствуйте, мне нужно создать .bat файл, при запуске которого происходило бы поочередное открытие 1к+ файлов в определенной папке. Никакие дополнительные действия не нужны. Возможно ли это осуществить? Прошу помочь.

iccup.platoon@vk
12-05-2015, 22:30
Что-то вроде:
1) Указать папку с файлами, жмем "ОК"
2) Все файлы в папке начинают открываться по очереди...
2.1) Ожидая закрытия предыдущего
2.2) Ничего не ожидая, стартануть все файлы (может сломаться пентагон и ваш компьютер)

Iska
13-05-2015, 00:12
Попробуйте так:
@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFolder=%~1

if defined sSourceFolder (
if exist "%sSourceFolder%\." (
pushd "%sSourceFolder%"
for /f "usebackq delims=" %%i in (
`2^>nul dir /b /a:-d "*.*"`
) do start "" /wait "%%~fi"
popd
) else (
echo Can't find source folder [%sSourceFolder%].
exit /b 2
)
) else (
echo Usage: %~nx0 ^<Source folder^>
exit /b 1
)

endlocal
exit /b 0

Папка указывается аргументом пакетного файла. Можно просто перетащить папку на пакетный файл в Проводнике.

kennydzzze
13-05-2015, 04:53
Iska, Спасибо вам большое. Все работает, как часы.

2.2) Ничего не ожидая, стартануть все файлы (может сломаться пентагон и ваш компьютер) »
Файлы, которые мне нужно было открыть, сами выполняли автоматическое закрытие за счет программы, через которую они открывались.

VictorVictor
16-02-2020, 10:51
Добрый день! Тема, вижу, очень старая, но, может, кто-то откликнется все-таки, т.к. мне сейчас она прям очень актуальна. Сделал всё так, как описано в ветке. Действительно, вариант хорошо отрабатывает, но вот проблема: при старте всех файлов из папки они открываются одновременно в многократно открываемом приложении. То есть, по факту, если файлов 100, то будут открыты 100 копий приложения, которое по умолчанию их запускает. Может, предыдущему автору это то, что надо, но мне требуется открыть все 100 файлов в _единожды_ запущенном приложении. Как поменять код для этого?

Busla
16-02-2020, 11:26
если файлов 100, то будут открыты 100 копий приложения <..> но мне требуется открыть все 100 файлов в _единожды_ запущенном приложении. Как поменять код для этого? »
никак
это поведение реализуется самим приложением, а не внешним кодом

alpap
16-02-2020, 15:51
в _единожды_ запущенном приложении »
а что бы это дало, зачем так?
Например открыто 10 вкладок в браузере, процесс вроде один - браузер (ну не будем рассматривать браузеры где для каждой вкладки отдельный процесс в диспетчере), но во-первых в любом случае все что надо разбито по вкладкам-окнам-процессам и каждая из них потребляет свой ресурс хоть и принадлежит одному процессу и не меньший чем если это был бы отдельный процесс. Пишите на java, php, ... и открывайте в браузере во вкладках и будет вам один процесс и куча вкладок, не знаю, правда что при этом поменяется - эстетика?




© OSzone.net 2001-2012