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

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



Ответов(120 - 129)

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

Сообщений: 241
Цитата | Quote
Уважаемые знатоки!
А можно ли сделать батник, чтобы:
1 Создавал на диске D папку с датой в названии (2009.10.06)
2 Содавал ярлык этой папки в C:\Documents and Settings\Пользователь\SendTo
3 Удалял предыдущий ярлык
Желательно, чтобы без мелькания «черного окна» и без подтверждений со стороны пользователя.
Тогда можно было бы каждый день иметь в меню «Отправить» папку с сегодняшной датой.


Насчет папки с датой вместо имени - можно. Ярлык - нельзя. Если только не прибегнуть к WSH


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

Сообщений: 232
А разве не достаточно менять имя самой папки, а ярлык использовать один?


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

Сообщений: 162
Цитата | Quote(ENOTik_18654 @ 6.10.2009 - 19:39)
Насчет папки с датой вместо имени - можно. Ярлык - нельзя. Если только не прибегнуть к WSH


Простите тупую, а это что?


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

Сообщений: 241
Цитата | Quote
А разве не достаточно менять имя самой папки, а ярлык использовать один?


Да как вам угодно. Но ярлык с помощью батника не создать.

Цитата | Quote
Простите тупую, а это что?





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

Сообщений: 205
Подскажите код для очистки временной папки Windows и \Local Settings\Temp\ ,чтобы можно было поместить в автозагрузку и не знать проблем с очисткой,а то в Temp Windows заглянул а там около 100 метров мусора


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

Сообщений: 71
Цитата | Quote
Подскажите код для очистки временной папки Windows и \Local Settings\Temp\

Code
del /F /S /Q "%temp%\*.*" >>nul
rd /S /Q "%temp%" >>nul
md "%temp%" >>nul
del /F /S /Q "%WinDir%\temp\*.*" >>nul
rd /S /Q "%WinDir%\temp" >>nul
md "%WinDir%\temp" >>nul



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

Сообщений: 71
Цитата | Quote
Уважаемые знатоки!
А можно ли сделать батник, чтобы:
1 Создавал на диске D папку с датой в названии (2009.10.06)
2 Содавал ярлык этой папки в C:\Documents and Settings\Пользователь\SendTo
3 Удалял предыдущий ярлык
Желательно, чтобы без мелькания «черного окна» и без подтверждений со стороны пользователя.
Тогда можно было бы каждый день иметь в меню «Отправить» папку с сегодняшной датой.

Для ярлыка с постоянным именем
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%


xxmklink - сторонняя утилита для командной строки



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

Сообщений: 241
Цитата | Quote
del /F /S /Q "%WinDir%\Temp\*.*" >>nul
rd /S /Q "%WinDir%\Temp" >>nul
md "%WinDir%\Temp" >>nul
del /F /S /Q "%UserProfile%\Local Settings\Temp\*.*" >>nul
rd /S /Q "%UserProfile%\Local Settings\Temp" >>nul
md "%UserProfile%\Local Settings\Temp" >>nul


Я бы использовал системную переменную %temp%, нежели через другие переменные окружения(WinDir, UserProfile) выходить на нее. Быть можеть путь к TEMP изменен, а значит и код будет неэффективен, например, при пути: TEMP=c:\TEMP


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

Сообщений: 71
Цитата | Quote
Я бы использовал системную переменную %temp%

Видишь ли если сделать так как ты сказал то очищаться будет только временная папка пользователя, а есть еще для системы временная папка.
По умолчанию %TEMP% (%TMP%) ссылается на C:\Documents and Settings\Пользователь\Local Settings\Temp
а есть еще C:\Windows\Temp

В своей практике очень редко встречал людей которые меняют папку TEMP. Но в первом случае, согласен, можно изменить


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

Сообщений: 241
Цитата | Quote
Видишь ли если сделать так как ты сказал то очищаться будет только временная папка пользователя, а есть еще для системы временная папка.
По умолчанию %TEMP% (%TMP%) ссылается на C:\Documents and Settings\Пользователь\Local Settings\Temp
а есть еще C:\Windows\Temp

В своей практике очень редко встречал людей которые меняют папку TEMP. Но в первом случае, согласен, можно изменить


Эт да. Палка о двух концах. Надо смотреть по обстановке...