Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах

Модерирует : KLASS, IFkO

vu1tur (14-11-2006 16:59): http://forum.ru-board.com/topic.cgi?forum=62&topic=9040  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

hacsoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Задачи на bat-файлах
Вопросы, задачи и их решения по работе с командными файлами, а также сопутствующие ссылки.
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Программы » Командная строка, батники\сценарии
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Набор GNU утилит для win32
· Встроенный справочник по командам: hh ntcmds.chm
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
 
Готовые решения и частые вопросы:
· Создание листинга директорий на примере создания плейлиста
· Разименовывание переменных
· Переименовывание файлов по дате создания
· Запуск сетевого подключения
· Запуск bat файлов как сервис
· Пример выполнения команд по результату команды ping
· Использование даты на день раньше чем сегодня
 
Невозможности — что нельзя сделать с помощью командных файлов:
· изменть конфигурацию IP на удаленной машине (без помощи rcmd.exe) [добавил ALEF]
 
 
Дополняем шапку: добавляем готовые решения, полезные ссылки.
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Старая версия первого сообщения

Всего записей: 116 | Зарегистр. 18-11-2005 | Отправлено: 22:58 18-11-2005 | Исправлено: Elroir, 05:50 11-11-2006
isem



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Можно ли через бат перезагрузить службу и как ето сделать

Всего записей: 81 | Зарегистр. 22-07-2005 | Отправлено: 13:43 15-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
xlebopezka
Ты батничек назвал shutdown.cmd
Назови другим образом
 
или вызывай в нем shutdown.exe -s -f
 
Но лучше переименуй батник

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 13:44 15-08-2006
SuperKolobok



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть куча файлов, называются 8000, 8001, 8002, 8004, 8006.........  
Некотрых нет, как здесь например 8003 и 8005.
Нужно составить список отсутствующих файлов.

Всего записей: 218 | Зарегистр. 14-12-2005 | Отправлено: 13:46 15-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
isem
 

Код:
@Echo Off
Net Stop Spooler
Net Start Spooler

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 13:52 15-08-2006
Ruslan FM

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужно посмотреть какие есть папки в каталоге  
Set dirP=c:\temp
FOR /D %dirP%\ %%d in () do ECHO %%d
 
выдает ошибку Непредвиденное появление: c:\temp\.
 
что не так ???

Всего записей: 69 | Зарегистр. 10-11-2005 | Отправлено: 13:56 15-08-2006
art569

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
Set dirP=c:\temp
FOR /D %%d in (%dirP%\*) do ECHO %%d
 

Всего записей: 32 | Зарегистр. 07-11-2005 | Отправлено: 14:35 15-08-2006
Ruslan FM

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
art569
Спасибо помогло.

Всего записей: 69 | Зарегистр. 10-11-2005 | Отправлено: 14:37 15-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SuperKolobok

Код:
@Echo Off
For /l %%a in (8000,1,8010) Do If Not Exist %%a Echo %%a >>notexist.txt
 

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 15:38 15-08-2006
tim87

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ау! БАТные гуру! неужели никто не может ответить про коды возврата для конвейерного запуска?

Всего записей: 2 | Зарегистр. 11-08-2006 | Отправлено: 15:46 15-08-2006
ViSiToR



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
KapralBel

Цитата:
Если тебе надо кириллицу  Либо создавай батничек в кодировке 866, а не 1251  Либо в начале батничка давай команду CHCP 1251

Пробовал, не получается

----------
ViSiToR a.k.a CreatoR
CreatoR это не ник, CreatoR это стиль жизни!

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 22:15 15-08-2006
FXPELIVE

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Всем
А возможно с помощью пакетника сменить обои?
 
sanchopancho
Попробуй это:
Код:
@echo off
color 0C
Title=Удаление *.*
 
:begin
set delete=
set delete="C:\Мои ненужные файлы\Лишние файлы"
 
if "%date%" == "??.08.2006" goto start
goto end
 
:start
attrib -a -r -s %delete%
 
del /f/q/s %delete%\*.*
rmdir /s/q %delete%
 
del /f/q/s "%cd%\Имя пакетника.cmd"
:end

 
Перед использованием переведи в DOS-кодировку этой программкой http://Fkirichenko.narod.ru/files/program/dwc/dwc.rar
 
Работать должно на Windows XP

Всего записей: 348 | Зарегистр. 27-04-2006 | Отправлено: 03:05 16-08-2006 | Исправлено: FXPELIVE, 08:02 16-08-2006
ViSiToR



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
FXPELIVE

Цитата:
Попробуй это:

 
Зачем? ты не ошибся по адресу? а вообще, кому бы это не адресвано, вот более упрощённый вариант:
 

Код:
 
@echo off
chcp 1251
 
Title=Удаление *.*  
 
set delete="C:\Мои ненужные файлы\Лишние файлы"
 
if "%date%" == "??.08.2006" attrib -a -r -s %delete% & rmdir /s /q %delete% & del /f/ q /s "%cd%\Имя пакетника.cmd"
 

 
1. Зачем удалять все файлы из папки, а потом удалять эту папку, когда можно сразу удалить эту папку    
2. к чему метка :begin ? - и без неё всё прекрасно начнётся
3. А чтобы не было конфликта с кириллицей в путях, я добавил chcp 1251
4. А зачем менять цвет окна, там всё ровно не будет видно ничего (@echo off)

----------
ViSiToR a.k.a CreatoR
CreatoR это не ник, CreatoR это стиль жизни!

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 06:34 16-08-2006
FXPELIVE

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ViSiToR

Цитата:
 ты не ошибся по адресу?

Сорри, перепутал.
 

Цитата:
1. Зачем удалять все файлы из папки, а потом удалять эту папку, когда можно сразу удалить эту папку    
2. к чему метка :begin ? - и без неё всё прекрасно начнётся  
3. А чтобы не было конфликта с кириллицей в путях, я добавил chcp 1251  
4. А зачем менять цвет окна, там всё ровно не будет видно ничего (@echo off)

Спасибо за совет.

Всего записей: 348 | Зарегистр. 27-04-2006 | Отправлено: 08:04 16-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ViSiToR
Приведи батник

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 10:45 16-08-2006
ViSiToR



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
KapralBel

Цитата:
Приведи батник

Какой батник?  

----------
ViSiToR a.k.a CreatoR
CreatoR это не ник, CreatoR это стиль жизни!

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 11:14 16-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ViSiToR

Цитата:
KapralBel
 
Цитата:
Если тебе надо кириллицу  Либо создавай батничек в кодировке 866, а не 1251  Либо в начале батничка давай команду CHCP 1251
 
Пробовал, не получается  


Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 11:39 16-08-2006
ViSiToR



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
KapralBel
 

Код:
 
chcp 1251
find /i /c "Привет Мир" "test.tmp" | find /c "": 0"" > f.tmp  
for /f %%i in (f.tmp) do if %%i==0 echo ok > ok.tmp  
del /q f.tmp & exit


----------
ViSiToR a.k.a CreatoR
CreatoR это не ник, CreatoR это стиль жизни!

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 11:52 16-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ViSiToR
Что он делает??

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 12:29 16-08-2006
ViSiToR



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
KapralBel

Цитата:
Что он делает??

 
Этот пример немного неверен, вот правильный:
 

Код:
@echo off
chcp 1251
find /i /c "Привет Мир" "test.tmp" | find /c ": 0" > f.tmp  
for /f %%i in (f.tmp) do if %%i==0 echo ok > ok.tmp  
del /q f.tmp & exit

 
Этот батник, делает поиск в файле test.tmp, и по идее, он должен находить строчку содержащую "Привет Мир", и если слова были найдены, то создаётся файл ok.tmp как метка...
 
Но приведённый мной пример, сработает только если файл в котором происводится поиск, в кодировке ANSI, если он в кодировке UTF-8, то поиск не осуществляется - в принципе это я и хочю решить.

----------
ViSiToR a.k.a CreatoR
CreatoR это не ник, CreatoR это стиль жизни!

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 12:47 16-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ViSiToR

Цитата:
кодировке UTF-8

В этом и проблема - или 866 или 1251
Или искать утилиту которая понимает UTF-8

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 13:08 16-08-2006
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах
vu1tur (14-11-2006 16:59): http://forum.ru-board.com/topic.cgi?forum=62&topic=9040


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru