Имя пользователя:
Пароль:
 | Правила  

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

Ответить
Настройки темы
CMD/BAT - [решено] bat файл автозамена данних

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


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

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


Здравствуйте, уважаемые форумчане. Хочу попросить Вас о помощи в написании скрипта
Попробую описать подробно задачку:
Нужно сделать bat и закинуть на флешку. Когда вставляешь флешку в компьютер, автоматически bat запускается и удаляет или заменяет в папке С:\Temp\видео все файлы mp4 (около 16 шт) и вставляет или заменяет с флешки новые файлы мр4. Название удаленных файлов и новых будет одинаковыми типа 1мр4, 2мр4, 3 мр4. Буду весьма признателен за помощь)

Отправлено: 18:29, 02-11-2021

 

Ветеран


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

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


Цитата bredych:
файлик авторан.инф в корне флешки может запускать батник формата »
Не может. Отключили ещё в XP.


Цитата Mihail07:
Нужно скрыть работу батника и после выполнения замены файлов автоматически перегрузился компьютер. »
А сразу можно было озвучить?

Отправлено: 17:03, 03-11-2021 | #11



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

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


Ветеран


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

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


Цитата Iska:
Не может. Отключили ещё в XP. »
вроде у человека работает..
мне как-то влом вспоминать, где я поназапрещал автоплеи (и реестр, и политики, и еще где-то), чтоб проверить.. Уж очень меня бесили эти выскакивающие окошки при вставке чего угодно..

-------
Оснащение дурдомов компьютерами идёт полным ходом.
Об этом можно судить по комментариям в интернете.


Отправлено: 18:05, 03-11-2021 | #12


Ветеран


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

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


bredych, не, именно AutoPlay — работает. Не работает Autorun.

Цитата bredych:
Уж очень меня бесили эти выскакивающие окошки при вставке чего угодно.. »
Аналогично , коллега!

Отправлено: 19:18, 03-11-2021 | #13


Ветеран


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

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


1. Загрузите View any installed/connected USB device on your system соответствующей разрядности.
2. Создайте в каталоге %ProgramFiles% каталог USBDeview.
3. Извлеките в него содержимое загруженного архива (usbdeview.zip или usbdeview-x64.zip).
4. Создайте в том же каталоге файл «RunConnected.vbs» со следующим содержимым:
Скрытый текст
Код: Выделить весь код
Option Explicit

Dim strDrive

Dim objFSO
Dim objFile

Dim bFound
Dim strResult

Dim objSWbemLocator
Dim objSWbemServicesEx
Dim objSWbemObjectEx


If WScript.Arguments.Named.Count = 1 Then
	If WScript.Arguments.Named.Exists("Drive") Then
		strDrive = WScript.Arguments.Named.Item("Drive")
		
		Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
		
		If objFSO.DriveExists(strDrive) Then
			If objFSO.FolderExists("c:\Temp\видео") Then
				bFound    = False
				strResult = ""
				
				For Each objFile In objFSO.GetFolder(strDrive & "\").Files
					If StrComp(objFSO.GetExtensionName(objFile.Name), "mp4", vbTextCompare) = 0 Then
						objFile.Copy "c:\Temp\видео\", True
						bFound    = True
						strResult = strResult & objFile.Name & vbCrLf
					End If
				Next
				
				If bFound Then
					If MsgBox("Following files are copyed:" & vbCrLf & _
						"----------------------" & vbCrLf & _
						strResult & _
						"----------------------" & vbCrLf & vbCrLf & _
						"Restart computer now?", vbQuestion + vbYesNoCancel _
					) = vbYes Then
						
						Set objSWbemLocator    = WScript.CreateObject("WbemScripting.SWbemLocator")
						objSWbemLocator.Security_.Privileges.AddAsString "SeShutdownPrivilege"
						Set objSWbemServicesEx = objSWbemLocator.ConnectServer(".", "root\cimv2")
						
						For Each objSWbemObjectEx In objSWbemServicesEx.ExecQuery("SELECT * FROM Win32_OperatingSystem")
							' Reboot here!
							'objSWbemObjectEx.Reboot()
						Next
						
						Set objSWbemServicesEx = Nothing
						Set objSWbemLocator    = Nothing
					End If
				Else
					WScript.Echo "Nothing of *.mp4 found on root folder of [" & strDrive & "] drive."
					WScript.Quit 5
				End If
			Else
				WScript.Echo "Not found destination folder [c:\Temp\видео]."
				WScript.Quit 4
			End If
		Else
			WScript.Echo "Not found source drive [" & strDrive & "]."
			WScript.Quit 3
		End If
		
		Set objFSO = Nothing
	Else
		WScript.Echo "This script can't be runned manually." & vbCrLf & vbCrLf & _
			"Usage: wscript.exe """ & WScript.ScriptName & """ /Drive:<drive letter>"
		WScript.Quit 2
	End If
Else
	WScript.Echo "This script can't be runned manually." & vbCrLf & vbCrLf & _
		"Usage: wscript.exe """ & WScript.ScriptName & """ /Drive:<drive letter>"
	WScript.Quit 1
End If

WScript.Quit 0

5. Запустите оттуда USBDeview.exe и задайте в расширенных параметрах (\Options\Advanced Options) два следующих параметра:
Скрытый текст

Код: Выделить весь код
wscript.exe "RunConnected.vbs" /Drive:"%drive%"

При вставке флешки будет запускаться указанный скрипт WSH, проверяться наличие путей и файлов *.mp4, каковые будут копироваться с каталог-приёмник «c:\Temp\видео», после чего будет задан вопрос о перезагрузке машины (кстати, зачем?!).
6. Добавьте автоматический запуск USBDeview.exe любым удобным Вам способом.
7. После того, как отладите копирование, раскомментируйте в скрипте строку с вызовом перезагрузки, убрав перед ней знак апострофа «'»:
Код: Выделить весь код
						For Each objSWbemObjectEx In objSWbemServicesEx.ExecQuery("SELECT * FROM Win32_OperatingSystem")
							' Reboot here!
							'objSWbemObjectEx.Reboot()
						Next
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:58, 03-11-2021 | #14



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] создать bat файл из vbs с опцией самоудаления (шуточный файл) DJIOAN Скриптовые языки администрирования Windows 7 19-06-2020 00:15
[решено] bat файл для запуска 2 bat файла по очереди с интервалом 3 часа Dauren_mj Хочу все знать 3 05-02-2018 11:24
CMD/BAT - bat файл, который создаст 2 bat файла mazahaka2000@vk Скриптовые языки администрирования Windows 1 17-06-2015 22:07
Службы - Отключения служби архивации данних meloyn Тест-форум 0 07-03-2011 12:38
CMD/BAT - [решено] программа(.bat файл) которая случайным образом запускает .bat файлы из предложенных gangsterovich Скриптовые языки администрирования Windows 1 07-12-2010 06:45




 
Переход