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

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

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

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

   

Widok



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

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

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:38 10-03-2009 | Исправлено: TechnicsKuzya, 13:54 27-12-2009
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vitrzn
А ты попробуй сохранить батник в кодировке utf-8.
И потестируй на искуственно созданном каталоге с именами файлов и папок в разных кодировках (на русском). Во избежание...
Но, вроде, должно работать нормально.
 
 
Добавлено:
У меня и в других кодировках отрабатывает нормально...

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

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Братва, помогите, плиз!
Имеется экзешник prog.exe с параметром <param>.
И текстовый sourse.txt  с набором этих параметров (много) - каждый параметр в одной строке этого текстого файла. Как написать батник, который бы брал последовательно по одному параметру из sourse.txt, передавал бы экзешнику, экзешник бы выполнялся проверяя на выходе типа <prog param == arg> и в случае "да" загонял бы этот param  в другой текстовый файл типа sourse1.txt и шел бы дальше до конца текстового sourse.txt ? че то путаюсь с перенаправлениями <<  
 
Добавлено:
Братва, помогите, плиз!
Имеется экзешник prog.exe с параметром <param>.
И текстовый sourse.txt с набором этих параметров (много) - каждый параметр в одной строке этого текстого файла. Как написать батник, который бы брал последовательно по одному параметру из sourse.txt, передавал бы экзешнику, экзешник бы выполнялся проверяя на выходе типа <prog param == arg> и в случае "да" загонял бы этот param в другой текстовый файл типа sourse1.txt и шел бы дальше до конца текстового sourse.txt ? че то путаюсь с перенаправлениями <<  
 
 

Всего записей: 5 | Зарегистр. 08-11-2009 | Отправлено: 00:46 08-11-2009
Maqentaer



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

Цитата:
экзешник бы выполнялся проверяя на выходе типа <prog param == arg> и в случае "да" загонял бы этот param  в другой текстовый файл типа sourse1.txt и шел бы дальше до конца текстового sourse.txt ? че то путаюсь с перенаправлениями <<  

вообще непонятно что ты хотел сказать.
судя по описанию тебе нужно еще и .exe написать.

Всего записей: 71 | Зарегистр. 18-05-2008 | Отправлено: 15:40 08-11-2009
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
мне понятно че ему надо - просто сделать такое. возится неохота.

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 18:25 08-11-2009 | Исправлено: bomzzz, 18:34 08-11-2009
yavig4

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не, экзешник не трогать. тоько выпонять в батнике с параметром, а вот резуьтат - куды б в переменную в батнике сохранять и сравнивать с некоторым значением..
 
Добавлено:
А че дого? Что-то типа:
@echo off
st:set /p arg =<c:\sourse.txt
start"" "prog.exe arg" = arg1
if arg1="123456789" goto st  

Всего записей: 5 | Зарегистр. 08-11-2009 | Отправлено: 23:56 08-11-2009
Maqentaer



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
очень важно знать, куда у тебя программа возвращает результат.
stdout (на экран), errorlevel (код ошибки выхода программы) или куда-то еще?
 
притом что, если помимо результата, там есть лишние строки, то нужен пример этого результата.
 
вот тебе пример, если программа возвращает в stdout только результат одной строкой:

Код:
@echo off
for /f "delims=" %%a in (sourse.txt) do (
    for /f "delims=" %%i in ('prog.exe "%%a"') do (
        if "%%i" == "123456789" (
            rem Делаем что-то
        )
    )
)
 

Всего записей: 71 | Зарегистр. 18-05-2008 | Отправлено: 07:50 09-11-2009 | Исправлено: Maqentaer, 08:11 09-11-2009
yavig4

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Возвращает стандартно, на экран (stdout) , тогда в "rem Деаем что-то" мне надо параметр "%%а" загнать в "sourse1.txt" (это еси "да" в if"%%i" == "123456789", а еси нет - продожать вытаскивать параметры из sourse.txt  и так до конца файа sourse.txt
 
Добавлено:
Ну, то и есть - прога выдает резуьтат одной строкой типа 001122 (вооще, препод екзешник по математике впер, че-то типа зафуденых циков с хреновскими кривыми), я бы все резко ускоко...

Всего записей: 5 | Зарегистр. 08-11-2009 | Отправлено: 13:28 09-11-2009
Maqentaer



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

Цитата:
тогда в "rem Деаем что-то" мне надо параметр "%%а" загнать в "sourse1.txt"


Код:
@echo off
del sourse1.txt
for /f "delims=" %%a in (sourse.txt) do (
    for /f "delims=" %%i in ('prog.exe "%%a"') do (
        if "%%i" == "123456789" (
            echo.%%a>>sourse1.txt
        )
    )
)

del sourse1.txt - удаляем файл перед добавлением строк в него, так сказать чтобы с нуля.

Всего записей: 71 | Зарегистр. 18-05-2008 | Отправлено: 16:30 09-11-2009
yavig4

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
СПС
Щас попробую!

Всего записей: 5 | Зарегистр. 08-11-2009 | Отправлено: 17:12 09-11-2009
GhoolVandal



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Как в батнике обработать список папок?
 
Грубо говоря есть переодически меняющиеся количество папок, и есть батник, обрабатывающий содержимое этих папок.
 
Надо запускать его для каждой из этих папок отдельно.
 
список папок можно брать из реестра, можно получать "dir /ad /b > list.txt"
 
 
пока что я как только узнаю о новых папках правлю батник руками, но это заморочено

Всего записей: 252 | Зарегистр. 14-08-2005 | Отправлено: 17:13 09-11-2009
gjf



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята, то ли лыжи не едут.... Короче, хочу создать в реестре раздел с параметром по умолчанию. Пробую:

Код:
reg add "HKEY_CURRENT_USER\Software\ABCD" /d trial

говорит - болт, тогда пробую

Код:
reg add "HKEY_CURRENT_USER\Software\ABCD" /v @ /d trial

- лепит дополнительный параметр @, который не нужен.
 
Как это сделать из строки?

----------
Тут могла бы быть Ваша реклама... или эпитафия

Всего записей: 10994 | Зарегистр. 14-03-2007 | Отправлено: 19:23 09-11-2009
AndreusB



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gjf
1. Reg-файл:
 
REGEDIT4
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]
@="@SYS:DoesNotExist"
 
2. Из батника: regedit...

Всего записей: 212 | Зарегистр. 20-07-2008 | Отправлено: 00:50 10-11-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А можно батником проверить ,  
IF Приложение НЕ запущено then запустить
 

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 07:40 10-11-2009
Smitis



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

Цитата:
Ребята, то ли лыжи не едут.... Короче, хочу создать в реестре раздел с параметром по умолчанию.

reg add /?
 - ключ /ve

----------
Разум когда-нибудь победит

Всего записей: 2435 | Зарегистр. 09-02-2003 | Отправлено: 11:24 10-11-2009
gjf



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AndreusB
Это к инсталлятору ещё и кусок в виде reg-файла цеплять? Неэстетично.
Smitis
Так создастся пустой параметр по умолчанию. В моём случае нужно создать раздел со значением. То есть так:

Неужели невозможно единой командой?

----------
Тут могла бы быть Ваша реклама... или эпитафия

Всего записей: 10994 | Зарегистр. 14-03-2007 | Отправлено: 17:20 10-11-2009 | Исправлено: gjf, 17:21 10-11-2009
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gjf
 
reg add hklm\software\ABCD /ve /d "ABCD"

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 17:40 10-11-2009
Sunnych



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
пытаюсь собрать с сетки ipconfig /all
есть cmdшник
net use F: \\192.168.10.13\C$ /USER:admin pass
echo Workstation: 192.168.10.13 > 192.168.10.13.txt
F:\windows\system32\ipconfig.exe /all >> 192.168.10.13.txt
net use F: /delete
в конечном файле я получаю информацию своих сетевых интерфейсов, подскажите как получить в файл информацию о сетевых интерфейсах друг. компа

Всего записей: 406 | Зарегистр. 14-02-2006 | Отправлено: 16:42 11-11-2009 | Исправлено: Sunnych, 16:43 11-11-2009
savvato



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день уважаемые форумчане, извините что пишу может быть не в той теме. Как скопировать файлы с заменой в ситемные папки Windows. Конкретно интересует папка %WINDIR%/ehome  . Как я понимаю надо забрать у system права на Администратора. Делал с помощью cacls и subinacl не помогает ... В безопасном режиме все ок копируеться ,но задача сделать это в обычном режиме при первом запуске с помощью батника. Ось Windows XP PRO rus с интегрированным eng медиацентром .В %WINDIR%/ehome хочу закинуть локализированые файлы для Медиацентра.

Всего записей: 52 | Зарегистр. 09-05-2009 | Отправлено: 17:06 11-11-2009
01MDM



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

Код:
 
wmic /node:\\192.168.10.13 nicconfig get /?
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 17:07 11-11-2009
Sunnych



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

Цитата:
wmic /node:\\192.168.10.13 nicconfig get /?  

пишет "Неверный глобальный ключ."

Всего записей: 406 | Зарегистр. 14-02-2006 | Отправлено: 17:24 11-11-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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru