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

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



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

Цитата:
приделать порядковый номер к названию папки, если аналогичная папка на сетевом ресурсе если ее размер не равне 0, добавить в конце имени папки "-"  


Код:
 
@echo off
setlocal
 
for /f "tokens=*" %%i in (list.txt) do call:check "%%i"
goto:eof
    
:check
set /a cnt+=1    
if exist z:\%1 (
    for /f "tokens=*" %%i in ('dir /b /s /a z:\%1') do (
        if %%~zi gtr 0 set "isEmpty=-" && goto:md
    )
)
 
:md
md "%cnt%_%~1%isEmpty%"
set "isEmpty="
 

Где z: сетевой диск

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 00:08 01-10-2009
musicstashall

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята, имеется вот такой код для завладения системными папками и файлами в Windows 7 для последующих операций с некоторыми системными файлами.:

Код:
if exist "%systemroot%\sysWOW64" goto end
if not exist "%systemroot%\System32\mcbuilder.exe" goto end
%windir%\System32\mcbuilder.exe
:end
 
takeown /f %systemroot%\rescache\ /r /d y >nul
takeown /f %systemroot%\ru-RU\ /r /d y >nul
takeown /f %systemroot%\Resources\ /r /d y >nul
takeown /f %systemroot%\system32\ru-RU\ /r /d y >nul
takeown /f %systemroot%\SysWOW64\ru-RU\ /r /d y >nul
 
icacls %systemroot%\rescache\ /grant:r администраторы:F /t >nul
icacls %systemroot%\ru-RU\ /grant:r администраторы:F /t >nul
icacls %systemroot%\system32\ru-RU\ /grant:r администраторы:F /t >nul
icacls %systemroot%\SysWOW64\ru-RU\ /grant:r администраторы:F /t >nul
icacls %systemroot%\Resources\ /grant:r администраторы:F /t >nul

Вопрос - все ли достаточно правильно, потому как есть случаи, что на некоторых системах этот код не допускается к выполнению:
Отказано в доступе

Всего записей: 147 | Зарегистр. 06-05-2009 | Отправлено: 18:42 01-10-2009 | Исправлено: musicstashall, 18:44 01-10-2009
ZDik

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
01MDM ничего не понятно, но огромное спасибо попробую)
еще осталось: как сделать ярлык для запуска батника из папки "D:\Foto 1" и в качестве параметра указать текущую папку?

Всего записей: 164 | Зарегистр. 15-03-2006 | Отправлено: 22:11 01-10-2009 | Исправлено: ZDik, 22:14 01-10-2009
vovanius1

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
01MDM
вот выяснил, что команда
 
netsh interface ip show dns "Internet"
 
показывает первичный и вторичный ДНС для выбранного интерфейса (в моем случае "Internet") в таком виде:
 
 
Configuration for interface "Internet"
    Statically Configured DNS Servers:    ххх.ххх.ххх.ххх
                                                      ууу.ууу.ууу.ууу
    Register with which suffix:           None
 
 
вот как бы оттуда выкусить адреса и присвоить их переменным? Я пока слабо с for /f дружу

Всего записей: 278 | Зарегистр. 17-02-2007 | Отправлено: 00:05 02-10-2009 | Исправлено: vovanius1, 00:09 02-10-2009
bomzzz



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

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 01:11 02-10-2009
22247



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Всем привет!
 
есть такая строка:
 
rar a DisplayDriver -ag_DDMM -dh -m5
создаёт файл DisplayDriver_0210.rar
 
Мне нужно чтоб фай имел расширение не .rar, а например .777 (ну или любое другое)
 
можно ли єто сделать непосредственно при упаковке.
или нужно будет переименование?
 
Заранее благодарю Всех за ответ!

Всего записей: 23 | Зарегистр. 19-03-2007 | Отправлено: 02:06 02-10-2009
Detroiter



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Форумчане, помогите, пожалуйста
 
Нужен батник, который будет перезапускать определенный процесс (utorrent.exe). Я так понимаю, нужно прописать удаление и затем вызов процесса. Ну и чтобы я смог путь к файлу свой добавить
 
Заранее спасибо!

Всего записей: 40 | Зарегистр. 25-08-2005 | Отправлено: 02:24 02-10-2009
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
22247
открыл RAR и в строке сохранить как изменил раширение rar на 8888 - он так и заархивировался, значит можно, читай командную строку к рару. она лежит в папке рара в текстовом файле  
Detroiter
о каком пути базар????

Цитата:
 
taskkill  /f /im utorrent.exe
ping 127.0.0.1 -n 2 >nul
utorrent.exe
 

не знаю нужна ли задержка (средняя строка 2 секунды) и какая надо пробовать, в принципе после таск килл отчет идет скорее всего и без паузы будет работать, можно вот так сделать utorrent.exe /recover
 
я смотрю какой то баран на википедии статью "улучшил" про µTorrent. вот старую сохранил http://bomz.t35.com/torr.htm
здесь все возможности освещены.
 
может просто тебе надо сделать папку и в настройках настройить чтоб торрент файл из нее автоматически на закачку вставали - просто туда файл помещаешь или копируеешь.

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 02:58 02-10-2009 | Исправлено: bomzzz, 03:10 02-10-2009
Detroiter



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

Цитата:
о каком пути базар????  

 
о полном пути, к исполняемому файлу
 
Большое спасибо за отзывчивость!

Всего записей: 40 | Зарегистр. 25-08-2005 | Отправлено: 03:35 02-10-2009
bomzzz



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

Цитата:
 
taskkill  /f /im utorrent.exe
ping 127.0.0.1 -n 2 >nul
start  C:\PROGRA~1\UTORRENT\utorrent.exe
 

 
ни понял не фига - если программа уже запущена зачем ее тогда оснавливать и запускать, только ради исполняемого пути без которого ее и в первый раз нельзя было запустить???

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 07:06 02-10-2009 | Исправлено: bomzzz, 07:27 02-10-2009
Detroiter



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
bomzzz
нет, вы меня не поняли
 
я просто думал, что для успешной работы батника нужно там будет прописывать полный путь к файлу

Всего записей: 40 | Зарегистр. 25-08-2005 | Отправлено: 10:16 02-10-2009
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну если батник валяется в директории рядом с исполняемым файлом µTorrent-а то не надо

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 11:33 02-10-2009
22247



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

Всего записей: 23 | Зарегистр. 19-03-2007 | Отправлено: 11:58 02-10-2009
ZolotnikOV



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

----------
— Ах, вы думали? Вы, значит, иногда думаете? Вы — мыслитель? Как ваша фамилия, мыслитель? Спиноза? Жан-Жак Руссо? Марк Аврелий?

Всего записей: 393 | Зарегистр. 26-11-2007 | Отправлено: 12:23 02-10-2009
01MDM



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

Код:
 
dir /b /a "SomeFolder" | 1>nul findstr "." || msg %username% empty
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 12:39 02-10-2009
ZolotnikOV



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
01MDM
Спасибо большое!!
А почему если русскими писать показывает кракозябры?

----------
— Ах, вы думали? Вы, значит, иногда думаете? Вы — мыслитель? Как ваша фамилия, мыслитель? Спиноза? Жан-Жак Руссо? Марк Аврелий?

Всего записей: 393 | Зарегистр. 26-11-2007 | Отправлено: 17:02 02-10-2009 | Исправлено: ZolotnikOV, 17:03 02-10-2009
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ZolotnikOV
Запускаешь из батника? Пропиши в верху "chcp 1251 1>nul".

Код:
 
@echo off
chcp 1251 1>nul
msg %username% ТЕСТ
 

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

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я запутался
 
Команда netsh interface ip show dns "Internet"
 
выдает:
 
Configuration for interface "Internet"
    Statically Configured DNS Servers:    ххх.ххх.ххх.ххх
                                               ууу.ууу.ууу.ууу
    Register with which suffix:           None
 
 
Если сделать
 
for /f "skip=2 tokens=5" %%i in ('netsh interface ip show dns "Internet"') do set primary=%%i
 
получим
 
set primary=ххх.ххх.ххх.ххх
 
и сразу
 
set primary=None
 
т.е. все логично, но как указать, что мне не нужно обрабатывать строку
 
Register with which suffix:           None
 
а только
 
Statically Configured DNS Servers:    ххх.ххх.ххх.ххх
 
Помогите, пжалста...

Всего записей: 278 | Зарегистр. 17-02-2007 | Отправлено: 17:14 02-10-2009 | Исправлено: vovanius1, 17:15 02-10-2009
01MDM



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

Код:
 
@echo off
for /f "tokens=*" %%i in ('netsh interface ip show dns "Internet" ^| findstr "[0-9]\.[0-9]"') do call:set %%i
echo %primary%
echo %secondary%
goto:eof
 
:set
if not "%2"=="" (set "primary=%2") else (set "secondary=%1")
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 18:01 02-10-2009
TruLander100

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем добрый день. Прошу мне помочь с простенькой задачкой)) :
мне нужно переименовать файлы до определенного вида, затем с этих переименованных файлов считать 3 строчку и сохранить ее в файл с таким же названием что и исходый файл, но в другой директории.
 
как я себе представляю все эти манипуляции (мне не важно чтоб батник выполнялся в 1 файле можно все поэтапно)
1)все файлы имеют имена отличающиеся только цифрами рабочий пример: cml.cgi-num=1.htm нужно оставить от названия только цифру 1,  
cml.cgi-num=243.htm оставить 234 и так далее.
 
2) опять переименовывать все эти уже переименованные файлы, но к их названию нужно прибавить число пример 34543
чтоб файл который назывался 1 к его названию прибавилось число 34543 в итоге мы видем файл 34544,  
точно также ко всем остальным 243 прибавляем к названию 34543 получаем 34786 и так далее.
 
3) опять переименовать эти же переименованные дважды файлы, но уже нужно приплюсовывать к названию рандомное число от 1 до 1000 и приплюсовать число 500 как константу которая увеличивается с каждым новым файлом на 500, то есть с каждым новым переименнованным файлом эта константа увеличивалась на 500.
Пример мы имеем файлы названием  34544, генерируем любое число от 1 до 1000 и приплюсовываем к названию, пусть с генерировалось 628 прибавляем к 34544 получаем
35172, далее прибавляем число 500 и запоминаем что оно увеличилось на 500 то есть в следующий раз оно будет 1000 получаем число 35672 и так ко всем файлам.
далее берем следующее число по порядку и проделываем тоже самое и увеличиваем константу опять на 500 и запоминает к следующему файлу то есть будет 1500.
 
4) все переименовывать больше ничего не нада))), теперь нужно считать из каждого файла 3 строчку и занести ее в файл с аналогичным названием исходного файла, но в другой директории к примеру 1. Все. думаю это не так уж и сложно но у мну мозга и знаний не хватает сделать это самому)). Спасибо тем кто поможет.

Всего записей: 24 | Зарегистр. 22-03-2009 | Отправлено: 19:03 02-10-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.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru