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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
vu1tur



Moderator-Saaber
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax
та не, без else можно
if exist тра ля ля
if exist тра ля ля

----------
I am free of all prejudice. I hate everyone equally.

Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 14:11 30-01-2006
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите плз какую нибуть утилиту которая моглаб из консоли прекриплять файл вписывать тему и адрес куда слать, скачал MAPImail.exe, но похоже он такое не умеет делать, вот что мне нужно, пример: имя_главного_файла имя_фаяла_который_нужно_прекрипить /ключь тема /ключ адрес /ключ телописьма
 
Это только пример, если есть  хоть какиенибуть варианты подскажите пожалуйста!
 
Спасибо!

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 10:08 31-01-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
DarkSmoke
1. The Bat!
2. SMTPSend

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 10:24 31-01-2006
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
хм.. это чуть - чуть не то мне нужно чтобы, так было: /ключ адрес_кому /ключ текст_сообщения /ключ прекрипляемый_файл
 
А то тогда получаеться что мне нужно создать файл с текстом самого письма(это не удобно жутко)  
 
Пример: /ключ admin@ukr.net /ключ Работа /ключ Добрый день! Расскажите пожалуйста по подробнее о работе.  
 
Типо такого что - то есть... ?
Спасибо!
 
Добавлено:
или любыми способами(cmd, c++, delphi что угодно лижбы работоло) какаие есть, просто нужно чтобы было автоматизированно максимально... .  
 

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 12:54 31-01-2006
GhostOfNight



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke
 
ZeRAT 2.00

Всего записей: 7 | Зарегистр. 07-06-2003 | Отправлено: 13:03 31-01-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
DarkSmoke
SMTPSend -tПолучатель@GMail.Com -fОтправитель@GMail.Com -hПочтовыйСервер -aПрикрепляемыФайл -sТемаПисьма -iФайлСПисьмом
Если письмо небольшое - можно поместить в тему, если же достаточно большое - все равно придется где-то его набрать.

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



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вопрос :
 
есть куча файлов
 setup.part001.exe
setup.part002.rar
setup.part003.rar
setup.part004.rar
setup.part005.rar
........это в идеальном варианте
но при скачки с ftp прога что качает в случае сбоя или ошибки делает следующее
 setup.part001.exe
setup.part002.rar
setup.part003[0].rar
setup.part004.rar
setup.part005.rar
 
как в команднойстроке при наличии такого случая переименовать его в setup.part003.rar или все что есть??

Всего записей: 100 | Зарегистр. 26-01-2006 | Отправлено: 13:29 31-01-2006
KapralBel



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

Код:
 
@Echo Off
For /R F:\DownLoad %%a in (*^[*) Do Call :_Ren %%a %%~na %%~xa
GoTo :EOF
 
:_Ren
Set OldName=%2
Set NewName=%OldName:~0,-3%
Echo Rename %1 --^> %NewName%%3
Ren %1 %NewName%%3
GoTo :EOF
 

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



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
пасибки работает будем пробовать в деле
 
огромное пасибо!!!
 
Добавлено:
Хатя я немного поторопился!!!
 
есль число попыток скачивания больше 9 те 10 например то немного не корректно
[ - остается

Всего записей: 100 | Зарегистр. 26-01-2006 | Отправлено: 15:02 31-01-2006
KapralBel



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

Код:
 
@Echo Off  
For /R F:\DownLoad %%a in (*^[*) Do Call :_Ren1 %%a %%~na %%~xa  
For /R F:\DownLoad %%a in (*^[*) Do Call :_Ren2 %%a %%~na %%~xa  
GoTo :EOF  
 
:_Ren1  
Set OldName=%2  
Set NewName=%OldName:~0,-3%  
Echo Rename %1 --^> %NewName%%3  
Ren %1 %NewName%%3  
GoTo :EOF  
 
:_Ren2
Set OldName=%2  
Set NewName=%OldName:~0,-1%  
Echo Rename %1 --^> %NewName%%3  
Ren %1 %NewName%%3  
GoTo :EOF  
 

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 15:10 31-01-2006
MIKKYPOL



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

Всего записей: 100 | Зарегистр. 26-01-2006 | Отправлено: 15:25 31-01-2006
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
GhostOfNight
спасибо все супер только не могу понять как файл прекрипить

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 15:56 31-01-2006
GhostOfNight



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke
 
Пример:
 
zerat.exe host:127.0.0.1 from:"send_mail@xxx.com" to:"get_mail@xxx.com" subject:"Test" type:multipart/mixed $boun "Content-Type: text/plain; charset=windows-1251" Hello. New message.\nThis message was checked antivirus system. $incl C:\test.rar
 
Правда этот пример для случая, когда на этой-же машине стоит почтовый сервер.
В других случаях - вместо 127.0.0.1 IP или имя сервера своего или любого в инете.
 
А подробнее смотри в CMDLTEST.BAT в папке zerata.

Всего записей: 7 | Зарегистр. 07-06-2003 | Отправлено: 16:16 31-01-2006 | Исправлено: GhostOfNight, 16:25 31-01-2006
VelDmi

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как можно изменить системную дату?
Например, проверяем текущую дату, и если она старее заданной то выставляем дату равную заданной. Региональные настройки известны заранее.

Всего записей: 529 | Зарегистр. 03-12-2002 | Отправлено: 17:41 02-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
VelDmi
Какое-то странное задание, зачем нужно, может быть сделать можно другими способами?
 
Добавлено:

Код:
 
@Echo off
Set dtCurrent=%date%
Set dtWork=03.02.2006
IF /i %dtWork% GTR %dtCurrent% Date %dtWork%
 

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

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KapralBel
После обновления биос или на старых матерях и т.д. стоит дата 2-3 года назад. При этом проги из unattend диска могут заглючить (глючат). Вот и требуется проверить если системная дата старее даты создания CD, то установить хотя-бы на нее.
Дата создания CD создается на момент прожига следующим образом:
 
echo [General] > %InputPatch%\$OEM$\$$\System32\oeminfo.ini
echo [Support Information] >> %InputPatch%\$OEM$\$$\System32\oeminfo.ini
echo Line1=Last version %Date% %Time% >> %InputPatch%\$OEM$\$$\System32\oeminfo.ini
Собственно после установки винды в каталоге System32 имеется файлик oeminfo.ini в котором имеется Дата создания CD. Помоги ее оттуда выдрать для сравнения.
 
А код твой действительно работает. Чет я тупанул.

Всего записей: 529 | Зарегистр. 03-12-2002 | Отправлено: 19:01 02-02-2006
Etalon

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть две переменные
 
Set String=%1
Set SubString=%2
 
 
Как из переменной %String% удалить %SubString%
 
Заранее благодарен.

Всего записей: 306 | Зарегистр. 03-02-2006 | Отправлено: 08:38 03-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
VelDmi
Не понял - помощь еще нужна?
 
Etalon
Тебе нужно именно возможностями .bat|.cmd? - гемморой, на .VBS|.JS гораздо легче...

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

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
С помощью конструции
 
for /r %1 %%f in (*.*) do echo ^"%%f^" >> file.txt
 
я создаю список файлов, но мне надо чтобы в списке указывался не полный путь,
а относительный %1, т.е. %1 надо вырезать
 

Всего записей: 306 | Зарегистр. 03-02-2006 | Отправлено: 10:39 03-02-2006
VelDmi

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

Цитата:
Не понял - помощь еще нужна?

Да. Нужно dtWork вытащить из файла следующего содержания:
--------------------------------------------------
[General]  
Manufacturer = Pow  
[Support Information]  
Line1=Last version 03.02.2006 12:40:17,43  
Line2=My Boot 5.0  

Всего записей: 529 | Зарегистр. 03-12-2002 | Отправлено: 11:30 03-02-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