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

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

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

Widok (10-03-2009 12:39): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

Widok



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

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

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:08 19-11-2007 | Исправлено: Dmitriy05, 22:49 13-04-2008
Kilyan



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elroir
Может быть все же найдется? ато логи хочется в 2-3 файлах иметь, и по одинаково структуре со смещением.
Вот этот код Подробнее... не совсем подходит - удаляется старее по дате создания по указанному кол-ву возможных SKIP=2.

Всего записей: 886 | Зарегистр. 04-09-2008 | Отправлено: 17:19 09-02-2009
svradmin



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Большое человеческое спасибо, работает

Всего записей: 20 | Зарегистр. 10-03-2007 | Отправлено: 05:13 10-02-2009
Elroir



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

Код:
 
@echo off
setlocal
set "maxFiles=5"
set "file=backup.txt"
for %%a in (%file%) do set "name=%%~na" && set "ext=%%~xa"
if exist "%name%_%maxFiles%%ext%" del /q "%name%_%maxFiles%%ext%"
for /l %%i in (%maxFiles%,-1,1) do call :checkAndRename %%i
if exist "%file%" ren "%file%" "%name%_1%ext%"
:: Здесь твой код создания бекапа
:: . . .  
 
 
goto :EOF
:checkAndRename
set /a "next=%1+1"
if exist "%name%_%1%ext%" ren "%name%_%1%ext%" "%name%_%next%%ext%"
 


----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 16:14 10-02-2009
Kilyan



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elroir
Это просто суппер! Биииг Сенкс.... Как я не изворачивался с полуготовыми примерами - ну не получалось у меня... Огромное спасибо!
Если есть возможность - закинь в Задачи на bat-файлах 5. Наверняка пригодится еще кому!..

Всего записей: 886 | Зарегистр. 04-09-2008 | Отправлено: 16:24 10-02-2009
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Столкнулся с такой проблемой - не хочет у меня findstr понимать кириллицу.
Наверное, просто тямы у меня не хватает...
Команда такая:

Код:
cmd /c findstr /i "текст" 1.txt > 2.txt

С английским все нормально...  
Подскажите, пожалуйста.

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 12:01 11-02-2009
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Rush
А если его выполнить из cmd.exe
 
Ктстати -
Цитата:
cmd /c findstr /i "текст" 1.txt > 2.txt
 

Это фрагмент батника или то что вводится через пуск\выполнить

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 12:22 11-02-2009
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KapralBel
из командной строки
 
Добавлено:
cmd.exe тоже пробовал

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 12:42 11-02-2009
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
И?
что дает?
 
если не трудно мне на МойНик@GMail.Com - и файл и что ищется

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 12:49 11-02-2009
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KapralBel
Ничего.
 
Файл любой. Я пробовал различные. Со смешанным текстом при строке поиска латиницу находит, а кириллицу нет.
Например, в файле с таким содержимым:

Код:
 
b
п
d
ц
z
д
 


Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 13:25 11-02-2009
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Rush
А в какой кодировке текст?
Ищет национальные буквы - когда они в OEM кодировке

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

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rush
Файл в котором ищется, должен быть в кодировке 866, а не 1251.
Или батник должен быть написан в 1251 кодировке.

Всего записей: 884 | Зарегистр. 14-12-2005 | Отправлено: 13:56 11-02-2009
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Файл в котором ищется, должен быть в кодировке 866, а не 1251.

Понятно.
А можно задать в комстроке (не батнике) чтобы искал в 1251?

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 14:01 11-02-2009
KapralBel



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

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 14:22 11-02-2009
SimakPSP

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скажите пожалуйста можно ли создать батник чтоб при помощи его копировать и упаковывать файлы с разных папок в одну папку , например мне нужно скопировать три файла  
 
D:\1C_BASE\Pc\R11.zip
D:\1CB_BASE\PC\RB11.zip
D:\Doc\Price08.xlsx
 
в папку одним архивом
 
C:\Doc\
 
и если возможно отправить потом этот архив по почте через outlook

Всего записей: 1 | Зарегистр. 11-02-2009 | Отправлено: 16:06 11-02-2009
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SimakPSP
Одним архивом - да
вочти все архиваторы поймут прямое указание в качестве источника всех трех файлов
 
а вот отправить через оутлук - врядли - это чудо нсколько я помню не позволяет полностью автоматизировать процесс.
 
Создать то оно создаст - а вот отправить - придется ручками нажимать на пимпочку

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



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Неоходима еще одна реализация:
1) Засечь время
2) выполнение процедуры
3) засечь время окончания - Вывод времени работы процедуры
Если это не сложно отпишите как?
 
Добавлено:
Вот что нашел: Подробнее... - Кажется работает! Но если есть альтернатива - с удовольствием не откажусь!

Всего записей: 886 | Зарегистр. 04-09-2008 | Отправлено: 16:51 11-02-2009 | Исправлено: Kilyan, 17:12 11-02-2009
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Kilyan
Нужно именно время работы? или время начала/окончания хватит?

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 17:48 11-02-2009
Kilyan



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

Всего записей: 886 | Зарегистр. 04-09-2008 | Отправлено: 20:07 11-02-2009
Studio13 OutlaW



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Так и не смог разобраться, возможно ли сделать в батнике такое:
Чтобы команды срабатывали только после определенной нажатой клавиши...
Например...
@echo off
color 02
echo Чтобы Скопировать файл "Gegrby.txt" нажмите 1, чтобы переместить файл нажмите 2, чтобы удалить файл нажмите 3.
......Какой-то код......
......Какой-то код......
.....goto labelmove
:labelmove
move Gegrby.txt SP\
move SP\Gegrby.txt
.....goto labelmove[q][/q]
 
:labelcopy
copy Gegrby.txt SP\
 
и так же для удаления
 
точно не знаю через goto...может так

Всего записей: 40 | Зарегистр. 04-02-2009 | Отправлено: 18:16 12-02-2009
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Studio13 OutlaW
Команда set /p поможет в решении задачи:

Код:
 
@echo off
setlocal
chcp 1251 1>nul
color 02
 
echo.
echo чтобы скопировать файл "Gegrby.txt" нажмите 1,  
echo чтобы переместить файл нажмите 2,  
echo чтобы удалить файл нажмите 3.
echo -------
 
set answer=0
set /p answer=" > "
 
if %answer%==1 goto:labelcopy
if %answer%==2 goto:labelmove
if %answer%==3 del Gegrby.txt
goto:eof
 
:labelmove
move Gegrby.txt SP\
goto:eof
 
:labelcopy
copy Gegrby.txt SP\  
 

 
Можно и просто без всяких goto:

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 18:28 12-02-2009 | Исправлено: 01MDM, 18:33 12-02-2009
   

Страницы: 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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru