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

Батники, 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 Теперь окно можно закрыть :-) ...



Ответов(130 - 139)

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

Сообщений: 162
Цитата | Quote(_Dimas_ @ 7.10.2009 - 11:33)
Для ярлыка с постоянным именем
Code
for /f "tokens=1-4 delims=. " %%i in ('date /t') do set CurDate=%%k.%%j.%%i
md d:\%CurDate%
xxmklink "%UserProfile%\SendTo\MyFolder.lnk" d:\%CurDate%

Для имени ярлыка с текущей датой
(«!» в имени ярлыка, отличительный признак от других ярлыков для удаления)
Code
for /f "tokens=1-4 delims=. " %%i in ('date /t') do set CurDate=%%k.%%j.%%i
md d:\%CurDate%
del /F /S /Q "%UserProfile%\SendTo\!*.lnk"
xxmklink "%UserProfile%\SendTo\!%CurDate%.lnk" d:\%CurDate%

Спасибо, все получилось!


·Anthony
Группа: Наши Люди

Сообщений: 799
Нужен батник для переноса профиля пользователя на другой диск.
ОС - Windows 7.

Батник должен:
  • выявить дирректорию пользователя
  • предложить создать такую же на на предлагаемом диске
  • создать её и перенести все файлы из дирр. диска C: в созданную
  • поменять все необходимые пути в реестре, включая сам профиль
  • удалить дирректорию пользователя на диске C:
  • ребутнуть комп
Или
  • выявить дирректорию пользователя
  • предложить создать такую же на на предлагаемом диске
  • создать её и перенести папки (Загрузки, Изображения, Мои видеозаписи, Мои документы, Моя музыка и Рабочий стол) из дирр. диска C: в созданную
  • поменять все необходимые пути в реестре
  • ребутнуть комп



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

Сообщений: 71
Цитата | Quote
Нужен батник для переноса профиля пользователя на другой диск.

1. Чтобы даже просто скопировать некоторые файлы из твоего профиля, ты как минимум должен быть под другой учетной записью
2. И если не ошибаюсь в
HKLM\SOFTWARE\Microsoft\Window NT\CurrentVersion\ProfileList\
можно поменять пути переменный, но они для всех профилей пользователей, а не только для конкретного.


·Anthony
Группа: Наши Люди

Сообщений: 799
Цитата | Quote(_Dimas_ @ 15.10.2009 - 11:39)
Цитата | Quote
Нужен батник для переноса профиля пользователя на другой диск.

1. Чтобы даже просто скопировать некоторые файлы из твоего профиля, ты как минимум должен быть под другой учетной записью
Т.е. такой батник в принципе невозможен?

Цитата | Quote(_Dimas_ @ 15.10.2009 - 11:39)
2. И если не ошибаюсь в
HKLM\SOFTWARE\Microsoft\Window NT\CurrentVersion\ProfileList\
можно поменять пути переменный, но они для всех профилей пользователей, а не только для конкретного.


Это я в курсе.
И про
Code
HKLM\SOFTWARE\Microsoft\Window NT\CurrentVersion\ProfileList\
, и про
Code
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]



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

Сообщений: 71
Цитата | Quote
Т.е. такой батник в принципе невозможен?

Элементарно попробуй скопировать файл реестра
\Documents and Settings\Пользователь\NTUSER.DAT


·Anthony
Группа: Наши Люди

Сообщений: 799
Цитата | Quote(_Dimas_ @ 15.10.2009 - 13:07)
Цитата | Quote
Т.е. такой батник в принципе невозможен?

Элементарно попробуй скопировать файл реестра
\Documents and Settings\Пользователь\NTUSER.DAT


У меня Windows 7. Какой именно NTUSER.DAT?


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

Сообщений: 71
Цитата | Quote
У меня Windows 7. Какой именно NTUSER.DAT?

У меня тоже Windows 7.
Файл есть такой
С:\Users\Пользователь\NTUSER.DAT
или (одно и тоже)
С:\Documents and Settings\Пользователь\NTUSER.DAT


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

Сообщений: 10
Доброго времени суток! Мне нужно, чтобы команда в бат-файле выполнялась по условию. Условие - достижение установленной даты <если системная дата >= (дата)>. Подскажите можно ли это сделать в батнике эту простую, в другом языке, инструкцию?


·HugoBo-SS
Группа: Модераторы

Сообщений: 10.906


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

Сообщений: 71
Цитата | Quote
Мне нужно, чтобы команда в бат-файле выполнялась по условию. Условие - достижение установленной даты

Code
echo off
rem Дату обязательно писать в формате ГГГГ.ММ.ДД
set MyDate=2009.12.22
for /f "tokens=1-4 delims=. " %%i in ('date /t') do set CurDate=%%k.%%j.%%i
if %MyDate% geq %CurDate% (моя_программа.exe)