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

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



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

Цитата:
а как еще можно проверку реализовать

Что-то вроде такого:

Код:
 
if "%COMPUTERNAME:~0,1%%COMPUTERNAME:~7,3%"=="KKST" goto 1
 

То есть - если первая буква плюс буквы с 8-й по 11-ую равны "KKST" ...


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

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 18:09 21-08-2009
BumerangII



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

Всего записей: 88 | Зарегистр. 14-12-2005 | Отправлено: 18:37 21-08-2009
Cosmogor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток
 
Вопрос экспертам:
Как при помощи батника удалить из файла,  
например 4.txt, весь текст до слова <RIP>,  
если учесть, что слово <RIP>  
встречается в файле 4.txt один раз.
 
Или наоборот, удалить весь текст после
слова <RIP>.
 
Если, конечно это возможно проделать с помощью батника.
Не откажусь от помощи и, в применения сторонней утилиты.
 
Спс.
ЗЫ.  
Ну очень уж надо.

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 15:25 22-08-2009
igor_andreev

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

Цитата:
Как при помощи батника удалить из файла,  
например 4.txt, весь текст до слова <RIP>,  
если учесть, что слово <RIP>  
встречается в файле 4.txt один раз.  

sed -e "1,/<RIP>/d"  

Цитата:
Или наоборот, удалить весь текст после  
слова <RIP>.  

sed -e "/<RIP>/,$d"

Всего записей: 1705 | Зарегистр. 08-12-2004 | Отправлено: 20:16 22-08-2009
Cosmogor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
igor_andreev
 
Спасибо.
Сильная программа всё таки sed  
Текстовый файл 1мб. за какие-то секунды обрабатывает!
Когда Notepad может и зависнуть на том же файле.
 
Интерестно, а оболочка есть у sed-а?

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 07:53 23-08-2009
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а откуда команда такая - sed? в хелпе ее нету. и чего она делает???
блин http://ru.wikipedia.org/wiki/Sed
вот спасибо - это именно то что я долго искал

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 08:39 23-08-2009 | Исправлено: bomzzz, 08:46 23-08-2009
Ninja33



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте,помогите пожалуйста решить такую задачу:В корне DVD диска имеется Autorun.exe,все настройки меню авторана прописаны в файле "setup.ini",мне нужно запустить из этого меню программу,например "KS.exe",в "setup.ini" указываю путь к пакетному файлу на запуск этой программы:START/WAIT KS.exe,проблема в том,что если программа "KS.exe" лежит рядом с Autorun-ом в корне диска,то все нормально запускается и работает,но если ее переместить в какую нибуть папку (например в папку"DIR"),то батник запустит программу,но сама прога,после такого запуска,оказывается не рабочей,т.е. запустилась оболочка,но кнопки программы никак не реагируют на нажатие,не зависимо от того где находится батник,в корне диска или в папке рядом с програмой...Мне нужно эту прогу запустить из папки.Подскажите есть ли способы запустить ее так чтобы все корректно работало?
P.S.Здесь пример расположения файлов в корне диска и сами файлы (791.37 кб): http://ifolder.ru/13666448

Всего записей: 32 | Зарегистр. 28-09-2008 | Отправлено: 14:36 23-08-2009 | Исправлено: Ninja33, 16:04 23-08-2009
Cosmogor



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

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 20:47 23-08-2009
Ninja33



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

Цитата:
Очень как-то запутано.  
Приведи пример.

Хотел объяснить подробние,а получилось как всегда...
Еще проще:нужно запустить из батника программу установки драйверов от K-Systems.Содержание моего батника:START/WAIT KS.exe. Если положить батник рядом с программой KS.exe в одну папку и запустить,то все работает как надо,а если переместить программу KS.exe в папку,например "123" (батник остается на месте) и запустить  батник с таким содержанием:START/WAIT 123\KS.exe,то кнопки программы K-Systems,не работают.Как нибуть можна это решить?Может есть какя-то хитрость...?
В своем посте выложил ссылку,на все файлы,чтобы наглядно продемонстрировать,что я имею ввиду...

Всего записей: 32 | Зарегистр. 28-09-2008 | Отправлено: 21:15 23-08-2009
Cosmogor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ninja33
 
chcp 1251>nul
SET NAME=%~dp0
 
call "%NAME%DIR\k_setup.exe"

 
Как не пытался запустить файл нечего не  
выходит. Вот только так более менее.
 
Ещё добавь в файл PCI.INI путь
ExecutePath="DIR\DRP\UTILITES\SaveHwids.exe";

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 23:21 23-08-2009
nikrons

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, кто знает...
Перепробовал массу советов, но ни один не работает.
На экране есть линк на удалённое соединение X25Donpac.lnk.
Если его запускать с экрана мышей, то он запускается и подключается.  
 
А если из *.cmd
cmd /c rasphone X25Donpac, то он тоже запускается, но надо ещё нажать Connect.
 
Вопрос:
Как можно запустить из *.cmd этот линк, чтобы он не прсил нажать Connect ?
 
пробовал start ...
               cmd /x ...
там ещё проблемы с длинными именами и пробелами.
 
Полный путь до этого файла  
D:\Documents and Settings\All Users\Desktop\X25Donpac.lnk
 
Спасибо.
 
 
 
 
 

Всего записей: 619 | Зарегистр. 09-08-2001 | Отправлено: 09:18 24-08-2009
01MDM



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

Код:
 
rasdial <название_соединения> <пользователь_в_сет.соед.> <пароль_сет.соединения>
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 10:17 24-08-2009 | Исправлено: 01MDM, 10:19 24-08-2009
nikrons

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня rasdial не работает, т.к. я использую COMIP - виртуальный модем и виртуальный COM порт.

Всего записей: 619 | Зарегистр. 09-08-2001 | Отправлено: 10:22 24-08-2009
Ninja33



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cosmogor
Спасибо,уже что-то получается,теперь нужно только пути переписать....Благодарю!
 
Добавлено:
Попробовал на другом компютере,не срабатывает скрипт:
Цитата:
chcp 1251>nul  
SET NAME=%~dp0  
call "%NAME%DIR\k_setup.exe"
,пишет системе не удается найти указанный путь...
Работает только если поместить батник в папку с программой "k_setup.exe" и поменять содержимое на :chcp 1251>nul  
SET NAME=%~dp0
call "%NAME%\k_setup.exe"
 
Пути в PCI.INI поменял,но хотелось бы знать,для общего развития,такое:я так понимаю,программа начинает отсчет пути с того места где она находится,(например находится она в папке DIR),правильная запись пути к файлу "SaveHwids.exe", в PCI.INI ,если ее запустить без батника, выглядит так:ExecutePath="DRP\UTILITES\SaveHwids.exe";, но если запускать из батника,путь надо менять на ExecutePath="DIR\DRP\UTILITES\SaveHwids.exe";,следовательно ,если запустить программу стандартно,без батника, то ExecutePath="DIR\DRP\UTILITES\SaveHwids.exe"; будет не правильным...,почему так происходит,точнее почему в последнем случае программа будет видить путь? Ткните ,пожалуйста, где можна об этом почитать или просветите если вас не затруднит...
 
З.Ы.Как еще сделать,чтобы окно командной строки закрывалось сразу после запуска,а не дожидалось закрытия программы? И может есть какая консольная утилита,с помощю которой можно было решить эту проблему? Спасибо!

Всего записей: 32 | Зарегистр. 28-09-2008 | Отправлено: 10:53 24-08-2009 | Исправлено: Ninja33, 15:09 24-08-2009
HaK1R



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

Код:
@echo off
hs_message.exe "Нажмите ДА для запуска 1C8, НЕТ для запуска 1C77. Для отмены запуска нажмите ОТМЕНА" "Запуск прогрмаммы" Q YESNOCANCEL
if "%errorlevel%==6" (start "C:\1C8.exe")
if "%errorlevel%==7" (start "D:\12\1C77.exe")

Скачать hs_message можно тут
справка по ней  
hs_message /?

Всего записей: 136 | Зарегистр. 04-05-2009 | Отправлено: 17:03 24-08-2009
musicstashall

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята, подскажите, кто на форуме, ответ на простенький вопрос,  
как из строки удалить файлы сразу у всех пользователей, причем у используемой учетки эти файлы при исполнении: Users\Пользователь\AppData\Local\Microsoft\Windows\UsrClass.*.*
файлы скрытые.
Юзаю Win7

Всего записей: 147 | Зарегистр. 06-05-2009 | Отправлено: 22:01 24-08-2009 | Исправлено: musicstashall, 22:05 24-08-2009
mayachka78



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите пожалуйста, как скопировать каталог %USERPROFILE%\folder\ в текущий каталог батника, расположеный на другом разделе. Всё, что смог, это используя CD /D %AppData% , скопировать папку  внутри раздела <C>,  
xcopy folder C:\folder\ /H /E /G /Q /R /Y, далее надо как-то вернуться в родительский каталог, чтобы сработало  
xcopy C:\folder folder\ /H /E /G /Q /R /Y  Перепробывал СD.,CD\ и др. всевозможные комбинации, безрезультатно. Да и в этом деле я ещё совсем
 

Всего записей: 3 | Зарегистр. 25-07-2009 | Отправлено: 12:29 25-08-2009
01MDM



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

Цитата:
Подскажите пожалуйста, как скопировать каталог %USERPROFILE%\folder\ в текущий каталог батника, расположеный на другом разделе.

А в чем проблема?

Код:
 
@echo off
xcopy /e /i "%userprofile%\folder" "folder"
 


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

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ввожу строку: del %localappdata%\microsoft\windows\дальше указываю удаляемый файл - не может найти путь, почему так происходит? Ввожу set localappdata -распознает и показывает путь. Что не правильно то делаю?
 
Добавлено:
Ребята у меня в моей учетке переменные юзера в строке перестали работать, в другой учетке все нормально. Вот например: ren %localappdata%\microsoft\windows\UsrClass.dat UsrClass.old >nul в моей учетке говорит неправильный синтаксис, в другой учетке находит файл.
 
И еще: Как заставить строку работать со скрытыми системными файлами?

Всего записей: 147 | Зарегистр. 06-05-2009 | Отправлено: 19:16 25-08-2009
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
musicstashall
Если определена переменная %localappdata%, то было бы не лишним указать ее значение. В XP такой переменной нет, есть %appdata%. Возьми путь в кавычки, может есть пробелы в значении этой переменной.

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 21:00 25-08-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