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

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

Ответить
Настройки темы
CMD/BAT - Скрипт: "ProgrBar" копирования всех файлов из папки "Media"

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


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

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


Изменения
Автор: ufooo000
Дата: 20-07-2017
Скрипт: "ProgrBar"
Код: Выделить весь код
@Echo Off
Setlocal EnableDelayedExpansion
MODE CON COLS=80 LINES=1
color 1e

xCopy /Y "Media\"*"" "%Windir%\Media"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Afternoon"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Calligraphy"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Characters"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Cityscape"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Delta"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Festival"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Garden"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Heritage"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Landscape"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Quirky"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Raga"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Savanna"
xCopy /Y "Media\AllinOne\"*"" "%Windir%\Media\Sonata"

Set N_Col=79
:: Cik faili jakope
Set cntA=203 
Set cnt=0
:loop
Call :Media
Call :ProgressBar Processed
If Not %cnt%==%cntA% GoTo :loop
Echo.
ping -n 9 localhost>Nul
Exit /b
:ProgressBar
If %cnt%==0 (
	For /L %%a In (1,1,%N_Col%) Do Set Line0=!Line0!°& Set Line1=!Line1!
	<Nul Set /p X=!Line0!!Line1!
)
Set /a cnt+=1, Inc=cnt*N_Col/cntA-%cnt%*N_Col/cntA, prsnt=cnt*100/cntA
Title %1 %prsnt%%% Files: %cnt% from %cntA%
If %Inc% GTR 0 For /L %%a In (1,1,%Inc%) Do <Nul Set /p X=Ы
GoTo :EOF
:Media
For /L %%k In (1,1,10000) Do rem
GoTo :EOF
Exit /b

Отправлено: 08:12, 24-06-2017

 

Ветеран


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

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


ufooo000,
ПРАВИЛЬНО прикрутить прогресс-бар это целая наука и целая эпопея, ведь нужна привязка и к папке откуда и к папке куда, чтобы постоянно контролировать наполнение (процентовку) и выводить на экран. Просто запустить копирование и запустить воздушные шарики подобный ни к чему не привязанный прогресс-бар - надо ли оно, лишнее грузило для процессора. Можно использовать штатное средство анализа и отображения (может не так красиво как кому-то хочется, но точно и информативно) самой ОС:
пути свои проставьте в set вместо указанных после =
Код: Выделить весь код
@set @x=0 /*
@echo off
set "in=%Programfiles%"&: Путь к папке откуда копировать
set "out=%Userprofile%\Desktop"&: Путь к папке куда копировать
cscript //nologo /e:jscript "%~f0" "%in%" "%out%"
exit
*/new ActiveXObject("shell.Application").NameSpace(WScript.Arguments(1)).CopyHere(WScript.Arguments(0),16);
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:26, 24-06-2017 | #2



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

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


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


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

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


Вот интересный прогресс бар:
Код: Выделить весь код
@echo off
color 0a
MODE CON COLS=80 LINES=8
title %

set "my_file=*.txt"
set "my_folder=%USERPROFILE%\Desktop\File Copy"

2>nul md "%my_folder%"

setlocal
for %%i in (
 C D E F G H I J K L M N O P Q R S T U V W X Y Z
 ) do (
 set m=
 set n=
 >nul 2>&1 (
 dir/a %%i:\
 )&& (
 echo Drive %%i: processing...
 >.tmp 2>nul (
 dir/a-d/b/s "%%i:\%my_file%"
 )&& (
 cls
 mode 60
 <nul set/p="Drive %%i: "
 title 0%% completed.
 for /f %%j in ('
  ^<.tmp find/c /v ""
 ') do (
  for /f "delims=" %%k in ('
   ^<.tmp more
  ') do (
   if not defined count (
    set name=%%~nxk
   ) else (
    call set name=%%~nk[%%count%%]%%~xk
   )
   echo f| >nul 2>&1 (
   cmd/v/c xcopy/hkry "%%k" "%my_folder%\!name!"
   )
   <nul set/p=@
   2>nul set/a m+=100000/%%j
   set/a n=m/1000
   if defined n (
    call title %%n%%%%%% completed.
   )
   set/a count+=1
  )
 )
 title 100%% completed.
 mode 90,27
 title %
 )
 )
 cls
)
del .tmp
if not defined count (
 echo Files not found.
)

for /d %%i in ("%USERPROFILE%\Desktop\*") do rd /q "%%i" 2>nul
>nul ping -n 5 localhost
endlocal
exit/b 0

Последний раз редактировалось ufooo000, 20-07-2017 в 21:01.


Отправлено: 21:19, 13-07-2017 | #3


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


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

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


Код: Выделить весь код
@echo off
MODE CON COLS=44 LINES=3
color 1e
Title 
Progress Bar
echo.
cls
xCopy /Y "Media\"*"" "%Windir%\Media"
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ІІІІІІІІІІІІІІІІІІІІ 1%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫІІІІІІІІІІІІІІІІІІІ 2%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫІІІІІІІІІІІІІІІІІІІ 3%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫІІІІІІІІІІІІІІІІІІ 10%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫІІІІІІІІІІІІІІІІІ 15%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫІІІІІІІІІІІІІІІІ 20%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫІІІІІІІІІІІІІІІ 25%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫІІІІІІІІІІІІІІ 50%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫІІІІІІІІІІІІІ 55%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫІІІІІІІІІІІІ 40%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫІІІІІІІІІІІ 45%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫІІІІІІІІІІ 50%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫІІІІІІІІІ 55%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫІІІІІІІІ 60%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫІІІІІІІ 65%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫІІІІІІ 70%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫІІІІ 80%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫІІІ 85%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫІІ 90%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫІ 95%%
echo ----------------------------------
ping -n 1 localhost >nul
cls
echo.
echo.
echo Loading...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ 100%%
echo ----------------------------------
GOTO END
:END
cls
echo.
echo.
echo Setup complete...
echo ----------------------------------
echo Progress: ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ 100%%
echo.
echo.

Последний раз редактировалось ufooo000, 20-07-2017 в 21:01.


Отправлено: 09:38, 14-07-2017 | #4


Ветеран


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

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


ufooo000, Вы можете сколько угодно находить хоть натуральных прогресс-баров, хоть их имитаций — сказанное коллегой alpap выше останется в силе.

Отправлено: 14:55, 14-07-2017 | #5


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


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

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


Цитата Iska:
сказанное коллегой alpap выше останется в силе »
Ну и что теперь-все идеи годятся.

Отправлено: 20:58, 20-07-2017 | #6



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Delphi - [решено] Подскажите как прикрутить к скрипту команду на открытие сайта из "chrome.exe" ufooo000 Программирование и базы данных 2 06-12-2016 17:02
CMD/BAT - Помогите бат скриптом прикрутить цель к ярлыку на открытия папки "AppData" turbolover Скриптовые языки администрирования Windows 10 21-11-2016 15:18
CMD/BAT - [решено] Как "прикрутить" (прогресбар), к скрипту для копирования файлов. ufooo Скриптовые языки администрирования Windows 2 20-05-2015 02:35
[решено] Как прикрутить к скрипту "HardDriveInfo.dll" для определения серийника жесткого? centaurvv AutoIt 3 09-03-2010 20:28
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") submaster Microsoft Windows NT/2000/2003 5 13-09-2006 12:29




 
Переход