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

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

Модерирует : gyra, Maz

Widok (19-11-2007 12:08): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

   

KLASS



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Командная строка, батники\сценарии (bat, cmd)
Вопросы, задачи и их решения по работе с командной строкой, файлами, а также сопутствующие ссылки.

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Microsoft Windows » Задачи на bat-файлах 4
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Урок bat-аники (для начинающих)
· Набор GNU утилит для win32
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
· Справка по командам в виде Html
· Команды RunDll32
· Quick Batch File Compiler - Позволяет превратить ваш батник в независимое приложение
· Пример - получение и обработка списка пользователей
 
 
Старая версия первого сообщения

Всего записей: 9706 | Зарегистр. 12-10-2001 | Отправлено: 04:28 24-09-2002 | Исправлено: Elroir, 19:35 11-09-2007
counter



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

Цитата:
у меня создаеться архив кажную ночь (образ диска вернее говоря) акронисом.  
и запускаеться смд - переименовывая его в текующу дату...  
получаеться например три архива  
23.02.2006.тиб  
24.02.2006.тиб  
25.02.2006.тиб  
 
 
нужно в смд задать команду что бы удалялся файл названием на 3 меньше чем текущая дата - т.е. 26го числа должен удалиться 23.02.2006.тиб, а 27 соотв 24.02.2006.тиб и так далее...  

 
Если это временный архив, который живет несколько дней и никуда больше не копируется, то проще файлы называть условно, например ARC1, ARC2, ARC3 и просто переименовывать файлы. Уже несколько лет так работает: ежедневно создается last.rar, а дальше идут переименования, по цифре видно глубину архива. Не нужно напрягать нализировать дату сначала комп, а потом человека при работе с файлами
 
if exist %ARCDIR%arc3.rar del  %ARCDIR%arc3.rar >> %logfile%
if exist %ARCDIR%arc2.rar ren  %ARCDIR%arc2.rar  arc3.rar >> %LOGFILE%
if exist %ARCDIR%arc1.rar ren  %ARCDIR%arc1.rar  arc2.rar >> %LOGFILE%
if exist %ARCDIR%last.rar copy  %ARCDIR%last.rar  %ARCDIR%arc1.rar >> %LOGFILE%

Всего записей: 63 | Зарегистр. 29-04-2003 | Отправлено: 10:14 27-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Sully691
taskKill - встроенна в WinXP (~70kb)

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

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я знаю, но оказалось в версии XP HE , ее нет даже в инсталяции, нашел только
в Pro. Сейчас буду разбираться.

Всего записей: 48 | Зарегистр. 08-10-2004 | Отправлено: 21:22 27-02-2006
Hrist



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

Код:
if exist Arhiv.tib goto deli
goto end
:deli
if exist Arhiv3.tib del Arhiv3.tib  
if exist Arhiv2.tib ren  Arhiv2.tib  Arhiv3.tib  
if exist Arhiv1.tib ren  Arhiv1.tib  Arhiv2.tib  
if exist Arhiv.tib ren  Arhiv.tib  Arhiv1.tib
:end

 
конструкция условия мне не нравиться -
разве в досе нету условия в конструкции if условия else ?
что бы написать в одну строчку - если есть файл то иди на удаление иначе иди на конец....
 
Sully691
хех... врядли тут много народу использует Хоме - многие наверное даже и не подозревают что ее можно использтвать :))


----------
"Дьявол рождается из пены на губах ангела, защищающего правое дело". ГРИГОРИЙ ПОМЕРАНЦ

Всего записей: 2897 | Зарегистр. 24-06-2002 | Отправлено: 14:24 28-02-2006 | Исправлено: Hrist, 14:26 28-02-2006
Sully691

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KapralBel
Что-то у меня с батником не получилось. Доп.программы закрываются втоматом раньше чем головная. Что не так?

Всего записей: 48 | Зарегистр. 08-10-2004 | Отправлено: 08:30 04-03-2006
scup



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

Всего записей: 556 | Зарегистр. 04-04-2003 | Отправлено: 09:15 04-03-2006
KapralBel



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

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



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
scup
можно. для этого он сравнивает содержимое файла построчно если размер одинаковый.
 
Добавлено:
или если файлы большие то пусть считывает определенные строки и присовпадении (содержимое строк +размер ) то пусть делает что захочешь (удаление или перемещение)

Всего записей: 260 | Зарегистр. 01-12-2003 | Отправлено: 11:01 06-03-2006
KapralBel



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

Код:
 
@Echo Off
Del Result.txt /q >Nul
Del Temp.txt /q >Nul
For /R I:\ %%a IN (*.*) DO @Echo %%~za*"%%a" >>Temp.txt
For /F "delims=* tokens=1-2" %%a  In (Temp.txt) Do @Call :_Parse %%a %%b
 
GoTo :EOF
 
:_Parse
Set File=%2
Set Size=%1
For /F "delims=* tokens=1-2" %%a  In (Temp.txt) Do @Call :_CompareSize %%a %%b %1 %2
GoTo :EOF
 
:_CompareSize
Set F1=%2
Set F2=%4
Set S1=%1
Set S2=%3
If %F1%==%F2% GoTo :EOF
If %S1%==%S2%  Call :_CompareContent %F1% %F2%
GoTo :EOF
 
:_CompareContent
FC %1 %2 >Nul
GoTo :_Result%ErrorLevel%
GoTo :EOF
 
 
:_Result1
GoTo :EOF
 
:_Result0
Echo %1==%2 >>Result.txt
GoTo :EOF
 

Работает крайне медленно из-за побайтного сравнения файлов с одинаковым размером

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 12:01 06-03-2006
dasm



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Возможно ли, vbs-скриптом сделать так, чтобы html-файл сохранялся в виде mht-файла автоматически? Например:
htm2mht.vbs htmfile.htm mhtfile.mht.

Всего записей: 287 | Зарегистр. 05-12-2003 | Отправлено: 16:21 07-03-2006
Nick 2003



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

Цитата:
Какой срок аренды IP - адресов у DHCP-сервера?

Извини, я в этом не очень соображаю, а где это можно узнать ? Думаешь с этим связано ?
PS. долго не заходил в эту тему, просто не надеялся.

Всего записей: 13879 | Зарегистр. 18-07-2003 | Отправлено: 03:07 12-03-2006
VovIK



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

Цитата:

Цитата:
Какой срок аренды IP - адресов у DHCP-сервера?

 
Извини, я в этом не очень соображаю, а где это можно узнать ?

ipconfig /all

----------
"Влада боїться свободи в серцях набагато більше, ніж голодного бунту. Бо голодного можна купити, а вільного — тільки вбити". (Любомир Гузар)

Всего записей: 7149 | Зарегистр. 31-03-2004 | Отправлено: 11:02 13-03-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Nick 2003
Настройки DHCP-сервера
Выбираешь нужную область - свойства - Закладка "General/общее" - в самом низу - срок аренды
При достаточно больших сроках (час и больше) очень малый шанс на то что пока ты освободишь текущий АйПи - кто нибудь его присвоит, при запросе на АйПи нового обычно DHCP-сервер выдает тот адрес, который комп обычно использует (если он не занят, конечно).  
при маленьких же сроках аренды на сеть идет большая нагрузка + к этому при малейшей недоступности DHCP - сервера - на компах пользователей идет сплошные Предупреждения о невозможности получить АйПи
 
Добавлено:
Можно и тем способом, который указал VovIK

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

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вопросик такой:
нужно в батнике написать такое
set scriptName=%scriptDir%\12941.List_Recipient.UPDATE.28.02.2006.sql
echo  where ln.id_person = lr.uniq_num) > 0) and  >>%scriptName%
echo  and ln.flag_sending <=0))))) ; >>%scriptName%
так беда в том что строки со знаками  < и >  не пишутся в файл
как такое сделать?
 
Добавлено:
Все, разобрался, нашел как.
Всем спасибо

Всего записей: 1282 | Зарегистр. 04-01-2003 | Отправлено: 18:05 13-03-2006
Nick 2003



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VovIK
KapralBel
Спасибо, срок аренды написан 2 часа, а уменьшить его нельзя ? И почему тогда при отключении/включении сетевухи хоть каждые 10 сек IP всегда меняется ? Можно тогда с помощью какого-нибудь батника отключать и включать сетевую карту чтобы не вручную этим заниматься ?

Всего записей: 13879 | Зарегистр. 18-07-2003 | Отправлено: 22:14 14-03-2006 | Исправлено: Nick 2003, 22:18 14-03-2006
Hrist



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

Цитата:
if exist %ARCDIR%arc3.rar del  %ARCDIR%arc3.rar >> %logfile%  
if exist %ARCDIR%arc2.rar ren  %ARCDIR%arc2.rar  arc3.rar >> %LOGFILE%  
if exist %ARCDIR%arc1.rar ren  %ARCDIR%arc1.rar  arc2.rar >> %LOGFILE%  
if exist %ARCDIR%last.rar copy  %ARCDIR%last.rar  %ARCDIR%arc1.rar >> %LOGFILE%  

забавно - когда эксперементирую с пцустыми файлами - все ок
когда файлы ао 15-20гиг в конце концов остаеться только arc1
 
есть подозрение что из за большого размера система маленко не успевает...
как поставить паузу на определенное время между каждо операцией

----------
"Дьявол рождается из пены на губах ангела, защищающего правое дело". ГРИГОРИЙ ПОМЕРАНЦ

Всего записей: 2897 | Зарегистр. 24-06-2002 | Отправлено: 15:51 20-03-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Hrist
Команды должны (в этом случае) выполняться последовательно
Приведи лог-файл

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

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как в батнике правильно написать
есть директория в ней есть еще несколько надо пройтись по них и удалить файлы которые не отвечают маске ????%month%??.ge%geo%? Спасибо!

Всего записей: 191 | Зарегистр. 16-09-2005 | Отправлено: 21:11 24-03-2006
Yuk



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

Код:
del /s mask

Извиняюсь, это для удаления по маске в поддиректориях. Как сделать противоположное пока остается открытым.

Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 21:22 24-03-2006 | Исправлено: Yuk, 21:25 24-03-2006
volodyalipkin



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VAbramyak
В три этапа.
1) Всё что нужно сохранить переписываем во временную директорию
2) Удаляем то что не нужно
3) Нужное переписываем назад.  

Всего записей: 768 | Зарегистр. 12-10-2002 | Отправлено: 21:29 24-03-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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd)
Widok (19-11-2007 12:08): лимит страниц. продолжаем здесь


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru