Войти

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


Shauniam
05-07-2021, 10:34
Нужна программа или скрипт(bat,com,ps1,vbs )По дискам разбросаны папки с отдельными программами,с сопутствующим описанием и сопутствующими составляющими к программам,без которых программы не запустятся.Нужно найти такие папки в которые вложены эти программы с запускающими exe-шками и целиком переместить в общую-заданную папку, в которой будут собраны эти разрозненные программы,со своими файлами.каждая в своей папке.

Так получилось,что программы-портабл и установочные собраны в разных местах.Потому нужна программа или скрипт(можно несколькими и в несколько заходов-поиск,редактирование списка и перенос директорий) обнаружения этих файлов и перенесение папок в которых они находятся с сохранением их структуры и целостью находящихся в них файлов.
План такой:
1.Программ или скрипт находит файлы и папки в которых они находятся-составляет список.
2.Редактирование списка с удалением ненужного.
3.Программа или скрипт переносит эти директории в одно место с названием Rrograms.
4.Вместе радуемся жизни и от достигнутого результата и моей благодарности(вам не помешает).
Если есть такая программа или скрипт который все это делает, то как мне ее найти или получить,чтобы достичь цели несколькими нажатиями клавиатуры и мышки? Будет сохранено огромная часть времени,... а жизнь так быстротечна и еще нужно много успеть-Жить-приносить радость ближним!

Iska
05-07-2021, 10:55
«Поди туда — не знаю куда, принеси то — не знаю что»™.

:shot:

Elven
05-07-2021, 11:59
Если есть такая программа или скрипт который все это делает, то как мне ее найти или получить,чтобы достичь цели несколькими нажатиями клавиатуры и мышки? »
На свете много, друг Горацио такого, что и не снилось нашим мудрецам.
Исходя из того, что нужно сделать, рекомендую посмотреть в сторону систем управления конфигурацией. В зависимости от различных параметров это может быть Ansible, Puppet, Chef, Salt... Подозреваю, что даже начало списка еще не закончено, однако здесь представлены весьма популярные варианты, информации как их пользовать в "ентих ваших инторнетах" - уйма. Если прицел чисто на винды то можно посмотреть в сторону SCCM, но, кмк, это таки не совсем про то.
Кроме того, т.к. упоминаются некие "составляющие... , без которых программы не запустятся" можно таки собрать нормальный установочник, и/или использовать контейнеризацию (здесь смотреть в сторону Docker).
Больше здесь, пожалуй, подсказать ничего не смогу, и маловероятно, что кто-то сможет. На такое описание задачи и ответ может быть только в общих чертах.

megaloman
05-07-2021, 18:04
Shauniam, ИМХО, игра не стОит свеч. Это разовая акция и затраты на разработку скрипта будут существенно больше, чем ручная разовая работа. В любом случае, чтобы что-то делать, надо знать имена исполнимых файлов. Чтобы что-то искать, надо иметь представление, как оно выглядит.
Если знаете имя "программа.exe", то из командной строки
Dir "программа.exe" /S /B /A:-D
можно найти и увидеть путь.

Вы наставили программ - какие-то следы от них есть? Иконки, пункты в пуске, информация в диспетчере задач и т д, откуда можно взять путь. А далее - ручками делаем перенос, если только это не нарушит функциональность программы.

greg zakharov
05-07-2021, 19:03
ИМХО, игра не стОит свеч.:off: Очень тактичный намёк со свечами автору темы.

megaloman
09-07-2021, 14:41
Shauniam, Не мытьём, так каканьем@Echo Off
cls
>nul Chcp 1251

Set "BoxIn=Q:"
Set "BoxOut=Q:\Programs"

FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%BoxIn%\" /S /B /A:D ^| findstr.exe /I /V /C:"%BoxOut%"`) DO Echo === %%d &If Exist "%%d\*.exe" (
Echo "%%d" &Echo ---------------------------------------------------
Dir /B /A:-D "%%d\*.exe"
Call :Cho "%%d" "%BoxOut%\%%~nxd\" ||Exit /B
)
Exit /B 0

:Cho
Echo.
CHOICE /C YNC /N /M "Y-переместить %~1, N-пропустить, C-завершить"
If %Errorlevel%==1 Xcopy /E /H /R /Y "%~1\*.*" %2 &&Rd /S /Q %1
If %Errorlevel%==3 Exit /B 2
Echo. &Echo. &Echo. &Echo.
Exit /B 0




© OSzone.net 2001-2012