( Вход | Регистрация | Поиск )

Батники, bat навсегда
Дата обновления: 10.02.2015 - 06:06, перейти к новому сообщению

·ENOTik_18654
Группа: Пользователи

Сообщений: 241
Предлагаю открыть тему создания разичный bat-файлов aka быстрого выполнения рутинных действий на компьютере, таких как содание папок с заданным именеи и резервное копирование туда нужой информации, сканирование папок с музыкой и создание плейлистов.

CODE
rem Создание папки с заданным именем
set /p FolderName=Введите имя папки:
echo %FolderName%
pause
md %FolderName%
echo Everything Done!


А это пример моего файла, которым я пользуюсь для создания резервных копий базы данных антивируса:

CODE
@echo off
title Резервное копирование

set archdir=E:\Distrib\BACKUP\Avast
set backupLST=E:\Distrib\Создание_backup

echo Идет остановка антивируса
net stop "avast! Antivirus"
net stop "aswUpdSv"
net stop "avast! Mail Scanner"
net stop "avast! Web Scanner"
pause

echo Идет архивация антивирусной базы данных программы Avast! Antivirus...

"%PROGRAMFILES%\WinRar\rar" a -ag+DD-MMM-YYYY -ilog:%archdir%\error.log -m5 -dh -t -idc  E:\Distrib\BACKUP\Avast\ @backup.lst

echo ********** >> %archdir%\backup.log
date /t >> %archdir%\backup.log
time /t >> %archdir%\backup.log
echo OK! >> %archdir%\backup.log
pause

net start "avast! Antivirus"
net start "aswUpdSv"
net start "avast! Mail Scanner"
net start "avast! Web Scanner"
rem Запуск иконки в трее
cmd /C "%PROGRAMFILES%\Avast4\ashDisp.exe"
echo Теперь окно можно закрыть :-) ...



Ответов(40 - 49)

finder07

Доброго времени суток, господа.

Помогите пожалуйста, мне нужен батник, который пинговал бы компьютер, а если бы ответа от компа не поступало, сразу же запускались бы несколько программ.

Заранее спасибо )))


·_Dimas_
Группа: Пользователи

Сообщений: 71
Цитата | Quote
Помогите пожалуйста, мне нужен батник, который пинговал бы компьютер, а если бы ответа от компа не поступало, сразу же запускались бы несколько программ.


Code
ping.exe Computer_or_IPAdress -n 1 -w 500
if ERRORLEVEL 1 goto :OFF
rem раздел программ если комп пингуется
rem если здесь программы не нужны ничего не писать
goto :EOF
rem если хочешь зациклить поставь метку в начале программы
rem а вместо "goto :EOF" напиши "goto :твоя_метка"
:OFF
rem раздел программ если комп не пингуется



·ENOTik_18654
Группа: Пользователи

Сообщений: 241
Цитата | Quote
а можно пример....?


Можно конечно!

Code

@ECHO OFF

rem Если существует файл Changed.mdb, то
rem переходим к метке ARCHIV и
rem добавляем в архив test все типы файлов,
rem иначе переход к END и выход!

IF EXIST Changed.mdb (GOTO :ARCHIV) ELSE GOTO :END

:END
ECHO Файла не существует! :-(
PAUSE
EXIT

:ARCHIV
"c:\Program Files\Winrar\rar.exe" a test *.*
PAUSE


PS Не забываем, что все бат-файлы должны быть в кодировке DOS, т.е. в 866 кодовой странице!


·ENOTik_18654
Группа: Пользователи

Сообщений: 241
Давно что-то эта тема не обсуждается. Продолжение... архивация БД программы QIP:

Code
@ECHO OFF

SET rar="c:\Program Files\Winrar\rar.exe"
SET archdir="E:\Ivan\Service\QipBase"
SET archfile="E:\Ivan\Service\QipBase\Users"


%rar% a -t -ep1 %archdir%\Backup_Hystory.rar %archfile%
PAUSE



·_Dimas_
Группа: Пользователи

Сообщений: 71
Урезание лога базы MS SQL
Code
@echo off
rem Важно !!! Кодировка DOS !!!
rem **************
rem * Backup.cmd - архивирование лога базы                     *
rem * Backup.cmd "Имя сервера" "Имя Базы" "Логин" "Пароль"     *
rem **************

echo %0 %1 %2 %3 %4
echo Начало выполнения: %Date% %Time%

set SQLServer=%1
set DataBase=%2
set Login=%3
set Password=%4

if '%SQLServer%'=='/?' goto :help
if '%SQLServer%'=='' goto :help
if '%DataBase%'=='' goto :help
if '%Login%'=='' goto :help

rem Microsoft SQL Server Command Line Tool
set osql=%ProgramFiles%\Microsoft SQL Server\80\Tools\Binn\osql.exe
rem Путь к каталогу бакапов на сервере
set Path=D:\
rem формирование имени файда
set FileName=%DataBase%_log
set BackupFile=%Path%%FileName%.bak

rem Проверки
if not exist "%osql%" (echo Microsoft SQL Server Command Line Tool "%osql%" не найден!
                      echo Поправьте значение переменной osql в командном файле!
                      goto :KONEC)
if not exist "%Path%" (md "%Path%"
                      if not exist "%Path%" (echo Не могу создать каталог "%Path%"!
                                             echo Проверте настройки доступа или поправте значение
                                             echo переменной Path в командном файле!
                                             goto :KONEC))
                                             
"%osql%" -S %SQLServer% -d master -U %Login% -P %Password% -Q "BACKUP LOG %Database% TO DISK = N'%BackupFile%' WITH INIT, NOUNLOAD, NAME = N'%Database% backup', NOSKIP, STATS = 10, NOFORMAT"

"%osql%" -S %SQLServer% -d master -U %Login% -P %Password% -Q "use %Database% DBCC SHRINKFILE (N'KompasMS_log', 128)"


goto :KONEC

rem Справка по использованию программы
:help
echo
echo Использование программы:
echo   %0 {Имя сервера} {Имя базы данных} {Логин} {Пароль}
goto :KONEC

:KONEC
echo Конец выполнения: %Date% %Time%
echo ------



·Васерман
Группа: Пользователи

Сообщений: 29
Ребята,помогите пожалуйста написать батник,который будет выключать комп ровно в 23.00.


·_Dimas_
Группа: Пользователи

Сообщений: 71
в планировщик запихни
shutdown -s -t 10
или
shutdown -s -m \\Другой_комп -t 10
Во втором случае нужны права админа на другой комп


·Васерман
Группа: Пользователи

Сообщений: 29
Цитата | Quote(_Dimas_ @ 29.07.2008 - 4:54)
в планировщик запихни
shutdown -s -t 10
или
shutdown -s -m \\Другой_комп -t 10
Во втором случае нужны права админа на другой комп



а по детальнее можно пожалуйста как запихнуть в планировщик?

и почему имеено -t 10 ,как планировщик определит что это имеено 10 вечера или например 10 утра?


Добавлено:

Еще такой ламерский,возможно,вопрос , перед тем как писать батник в тхт формате,обязательно писать в самом верху
"@echo off" ?


·_Dimas_
Группа: Пользователи

Сообщений: 71
Цитата | Quote
а по детальнее можно пожалуйста как запихнуть в планировщик?

Пуск -> Настройка -> Панель управления -> Назначенные задания.
Щелкаешь правой кнопкой мыши, в спывающем меню Создать -> Назначенное задание, даешь имя этому заданию (например «Выключение»)
Открываешь это здание. В поле выполнить пишешь
«shutdown -s -t 10»
-s этот параметр говорит то что комп надо выключить
-t 10 это задержка в секундах
Переходишь на вкладку Расписание
И ставишь нужное тебе расписание
Назначить задание: Ежедневно
Время начала: 23:00
Расписание по дням: Каждый 1 день
Нажимаешь ОК, появляется запрос от какого имени выполнять задание. По умолчанию там написан твой логин, так что просто вводишь свой пароль.

Цитата | Quote
Еще такой ламерский,возможно,вопрос , перед тем как писать батник в тхт формате,обязательно писать в самом верху
"@echo off" ?

«@echo off»
Писать не обязательно
Это строка предотвращает вывод на экран запускаемую строку
а символ @ не выводит на эктан саму команду echo off
Возьми какой-нибудь батник запусти его с этой строкой и без нее и посмотри отличия.


·Васерман
Группа: Пользователи

Сообщений: 29
спасибо,буду пользоватьс,я в последнее время лень выключать комп *в ручную*=)кстати а как добавить батник в автозагрузку ,если батник называеться,например,"123.bat"