Показаны сообщения с ярлыком bat. Показать все сообщения
Показаны сообщения с ярлыком bat. Показать все сообщения

18 сент. 2015 г.

Подключение к ftp через cmd

Не хотелось использовать сторонние утилиты, поэтому, с интернета по кусочку вышел такой способ резервного копирования, в моем случаи, файловой базы данных 1С на резервный ftp-сервер.

!В удаленного фтп сервера серый, динамический айпи, поэтому я использовал сервис https://www.noip.com/ для постоянного доступа к серверу.

Значит, поехали. Создаем и сохраняем файл с именем ftp_backup_DB_1C.bat

С содержимым

:: кодировка, если все норм у вас то не нужна эта строчка
@chcp 1251
:: «убить» процесс 1С
taskkill /IM 1cv8.exe /F /T
:: перейти в дирректорию «винрар-архиватора», который будет архивировать папку,                 :: естественно, архиватор должен уже быть установлен
cd "C:\Program Files\WinRar\"
:: архивируем папку d:\Base_1C\WorkDB в папку C:\db\, не забудьте создать папку db по пути :: C:\ с результирующим именем  WorkDB-Год_Месяц_День_Часы_Минуты 
::  в итоге выходит наименование файла типа «WorkDB-2014-03-07_00-32.rar»
Rar a -agYYYY-MM-DD_HH-MM C:\db\WorkDB- "d:\Base_1C\WorkDB"
:: подключиться к фтп серверу ftpserver.no-ip.biz с настройками с файла Connect.txt, который   :: лежит по локальному адресу C:
ftp -n -s: C:\Connect.txt -i ftpserver.no-ip.biz
:: удалить уже не нужный нам архив с папки
del /f /q C:\db\*.*
А теперь создаем по пути C:\ файл Connect.txt с содержимым
:: Логин и пароль
USER Логин Пароль
:: перейти в папку 1C_DB_Sklad на фтп сервере
cd 1C_DB_Sklad
:: скопировать с локального компьютера на фтп сервер все, что находиться по пути C:\db\, а у нас там :: архив базы данных
mput C:\db\*.*
:: закрыть фтп соединение
Quit
Далее, в Планировщике заданий (например, в моем случаи виндовс платформы) я создал задачу где в выборе Действия выбрал батник, а в рабочей папке я указал C:\


все!

!В прикрепленных файлах, на всякий случай, примеры батника + настроек.

31 дек. 2014 г.

Запуск теневых копий обычным пользователем

Используя Службы удаленных рабочих столов, на контроллере домена под управлением windows server 2012 r2 мне понадобилось одному пользователю, в которого есть только права Пользователи домена и те права которые операционная система устанавливает по умолчанию для обычного пользователя, дать доступ на использования Теневых копий, по простому сказать, это типа просмотр, а если надо то и управление сессиями пользователей подключенных к службам терминала, с возможностью запроса на подключения или без запроса.
Но так как запускать Теневые копии возможно только с правами Администратора пришлось выкручиваться вот таким способом, а именно
  • Создаем .bat файл с таким содержимым
@echo off
mode con:cols=100 lines=30
query user
echo.
set /p usersession= Enter the session ID: 
mstsc /shadow:%usersession% /noConsentPrompt
где
query user – команда выведет список активных пользователей
mstsc /shadow:%usersession% /noConsentPrompt – команда подключиться без запроса к пользовательской сессии под номером (ID) которую укажем, только для просмотра (для управления глянем mstsc /? сюда)
  • далее я сконвертировал .bat файл в .exe файл (хотя это не обязательно)
  • далее создал ярлык с путем runas /user:detmir_detmir\JL /savecred C:\ws.exe
где
detmir_detmir\JL – где detmir_detmir домен, JL название учетки админа
/savecred – параметр который сохранит логин и пароль, что бы после каждого запуска данного ярлыка не запрашивался пароль администратора
C:\ws.exe – путь к моему скомпилированному .exe файлу (у вас может быть .bat файл)
  • запускаем данный ярлык и вводим один раз пароль администратора, а моем случаи пароль от JL
В итоге вот что получается 

6 нояб. 2013 г.

Скрыть командную строку

Все идет своим чередом и после этой записи появилась идея скрыть появление (хоть и не длительное, но все же) выполнения команды .bat файла, которая запускается в Планировщике заданий на Windows 8. 
Сразу скажу, что помощь получил по адресу http://forum.oszone.net/ так, что не стесняемся обращаться туда, ведь человек все знать не может. 
И так, для скрытия выполнения команд в .bat файле, которые выполняются то ли через Планировщик заданий то ли еще каким то образом нужно написать .vbs скрипт, в котором будут находиться команды выполняемые ранее в "батнике" и в Планировщике будем уже указывать путь к выполнению не .bat файла. а .vbs скрипта.
И вот самой скрипт:

Option Explicit
Const Above_Normal = 32768
Dim objSWbemObjectEx
Dim lngProcessID
With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
If .ExecQuery("SELECT * FROM Win32_Process WHERE Name = '1cv8.exe'").Count = 0 Then
Set objSWbemObjectEx = .Get("Win32_ProcessStartup")
objSWbemObjectEx.PriorityClass = Above_Normal
' Create method of the Win32_Process class (Windows) (http://msdn.microsoft.com/en-us/library/aa389388(v=vs.85).aspx)
If .Get("Win32_Process").Create( _
"""C:\Program Files\1cv82\8.2.16.352\bin\1cv8s.exe"" ENTERPRISE /F ПутьКБазе/N ИмяПользователя/P ПарольПользователя", _
"C:\Program Files\1cv82\8.2.16.352\bin\", _
objSWbemObjectEx, _
lngProcessID _
) <> 0 Then
WScript.Echo "Can't start process [""%Program Files\1cv82\8.2.16.352\bin\1cv8.exe"" ENTERPRISE /F ПутьКБазе /N ИмяПользователя/P ПарольПользователя."
End If
Set objSWbemObjectEx = Nothing
End If
End With
WScript.Quit 0

разберемся, что здесь приведено, а именно некоторые куски:

If .ExecQuery("SELECT * FROM Win32_Process WHERE Name = '1cv8.exe'").Count = 0  - так как моя задача была проверять запущен ли 1cv8.exe процесс и если нет то запустить 

"""C:\Program Files\1cv82\8.2.16.352\bin\1cv8s.exe"" ENTERPRISE /F ПутьКБазе/N ИмяПользователя/P ПарольПользователя", _ - указываю, что запустить если не запущено 1cv8.exe, где можно указать путь к базе, имя пользователя и его пароль для автовхода 

"C:\Program Files\1cv82\8.2.16.352\bin\", _ - здесь обязательно должен быть указан путь к запускаемой программе

WScript.Echo "Can't start process [""%Program Files\1cv82\8.2.16.352\bin\1cv8.exe"" ENTERPRISE /F ПутьКБазе /N ИмяПользователя/P ПарольПользователя." - это вывод комментария если, что то пошло не так
 

CopyPaste Copyright © 2017 - |- Шаблон создан O Pregador - |- Отредактирован myr4ik07