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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

Maz



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

Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!! Чтобы не копировались концевые пробелы из форума, жмите на ссылку "Редактировать" в посте, и уже из редактора копируйте батник без пробелов.
 
Примечание: Большие куски кода заключайте в тэг [ more ].  

Смежные темы:
В помощь системному администратору > Автоматизация администрирования
Microsoft Windows > Сценарии Windows

Полезные ссылки:
· Из Windows XP Professional Product Documentation:
> Описание Cmd.exe > Command shell overview
> Using batch files > Using batch parameters > Using filters > Using command redirection operators
 
· Уроки bat-аники (для начинающих): первый и второй
· Курс из 19 лекций "Командная строка и сценарии Windows"
· Уильям Р. Станек - Командная строка Windows. Справочник администратора
 
· Выполнение BAT-скриптов без вызова окна консоли
· cmdow - изменение параметров и видимости дос-окна, Статья в КОМПЬЮТЕРРАONLINE
· Набор GNU утилит для win32
· HS_Packet.7z - Пакет утилит для организации интерфейса в bat-файлах
· blat - отправка почты из консоли
· Easy Batch Builder+Rus+Crack - Редактор BAT файлов.Через графический интерфейс программы вы сможете быстро конструировать пакетные файлы практически любой сложности. (В комплекте есть Лоадер созданный с помощью Sign Of Misery некоторые антивирусы обзывают его вирусом. Вам решать: ставить или не ставить) (ЗЕРКАЛО)
· Простой способ получать текущую дату всегда в одном формате (не зависит от языков и настроек) ещё и ещё
· Переход из 32-битной версии cmd.exe в 64-битную (1) (2)(3)
 
· Архив всевозможных версий cmd.exe (от Windows NT 3.51 до Windows 10) и command.com (DOS 5.0 и выше). Старые командные процессоры можно запускать на более новых ОС, хотя не всё может работать корректно. Подробная документация по командам cmd.exe и стандартным утилитам ОС для NT 3.51, NT 4.0, NT 5.0 (Windows 2000) и NT 5.2 (Windows Server 2003). Сборник представляет исторический интерес, а также незаменим для тех, у кого появилось желание сделать свои скрипты работоспобными не только на текущей версии ОС. Ссылки wdho.ru tinyupload.com dbree.org
 
· Сборник одним архивом: Сотни Win32 утилит командной строки, нетривиальные .cmd файлы, .bat miniperl скрипты (не требующие полноценной установки Perl), FAR Manager с плагинами и настройками, разное для DOS/DOSBox (откуда под Win32 интерес представляют три продвинутых "мультисистемных" .bat файла да ещё, может быть, оболочка Necromancer DOS Navigator с поддержкой LFN и доступом к буферу обмена Windows). Краткие описания всего - в файликах files.bbs

Всего записей: 37256 | Зарегистр. 26-02-2002 | Отправлено: 13:35 19-09-2020 | Исправлено: Maz, 07:16 24-04-2021
kot1313



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

Всего записей: 2305 | Зарегистр. 11-12-2002 | Отправлено: 18:52 09-11-2020 | Исправлено: kot1313, 19:33 21-01-2021
los

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Artem_Butenko
удалить все строки кроме начинающихся с 'String_'
посмотреть что получится:
sed -e "/^String_/!d" file
если результат устраивает:
sed -i -e "/^String_/!d" file
будьте внимательны - файл будет перезаписан.
P.S.
sed можно скачать здесь
https://github.com/mbuilov/sed-windows

Всего записей: 3592 | Зарегистр. 08-09-2001 | Отправлено: 19:16 09-11-2020
Fenrizz



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

Цитата:
@echo off
findstr /B /C:"String_1.My.Test.1=" file_1.txt >file_temp.txt
findstr /B /C:"String_2.My.Test.2=" file_1.txt >>file_temp.txt
move /Y file_temp.txt file_1.txt

Всего записей: 360 | Зарегистр. 12-09-2017 | Отправлено: 19:38 09-11-2020 | Исправлено: Fenrizz, 19:46 09-11-2020
ALEKCEN



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

Цитата:
Список служб:  

Да,это именно тоже,что у меня и было в виде экзешника,благодарен даже за это очень сильно)
Хотя он как-то странно отсортировал результаты...та служба,что была первой - оказалась почти в конце списка...от чего он отталкивается,интересно - ни по буквам,ни по позиции в списке сортирует...
А есть возможность этот список дополнить,чтоб он ещё и отображал тип запуска и запущен-ли он в данный момент,как я ниже дописал ? конечно копи-пастой,а точнее реплейсом это можно сделать,но это давольно муторно,ибо перед названием службы ничего нету и надо,как минимум туда пробел вносить,да и в конце тоже ничего нету...чтоб отреплейсить это тем,что я хочу сделать с ней,типо запуска\остановки...в общем-то что-то подобное я находил в поиске,там предлогали и из-под батника сделать (правда без примеров,просто пару команд приводили) и через повершел (хотя не сказать,что это удобно...совсем не удобно),но максимум,что там предлогали,это именно список служб и не более того...или просто ничего более,ни через пс,ни через батники получить нельзя ?
 

Цитата:
Пример обработки, список служб внизу кода: Название и через пробел желаемый тип запуска (если выбрать 2).  

а вот с этим я даже не понял,что делать...не важно,что выбираешь - 1 или 2,ничего не происходит(

Всего записей: 676 | Зарегистр. 08-04-2008 | Отправлено: 20:16 09-11-2020 | Исправлено: ALEKCEN, 20:18 09-11-2020
KiloSub



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ALEKCEN, мне проще всего вообще C#, в несколько строчек: Ссылка.
 
А в том батнике 1 - останавливаются службы, что в списке внизу, 2 - они стартуют и тип запуска устанавливается в такой, который в списке после пробела у них стоит. У меня работает. Но тут гарантии нет, ведь там всякие зависимости... Лучше через реестр с перезагрузкой.

Всего записей: 318 | Зарегистр. 30-05-2020 | Отправлено: 20:36 09-11-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313
Можно закрепить на панель задач ярлык к скрипту и на него перетаскивать нужную папку, скрипт будет получать её адрес и выполнять нужные действия.
 
Добавлено:
Нее, если ярлык на панели, то на него не перетянешь папку.


----------
Гомосексуальность среди модераторов не является психическим расстройством, несмотря на синонимы этого понятия в русском языке.

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 01:20 10-11-2020
kot1313



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

Всего записей: 2305 | Зарегистр. 11-12-2002 | Отправлено: 01:55 10-11-2020 | Исправлено: kot1313, 19:33 21-01-2021
KiloSub



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313, Вы реально не понимаете, что делаете, или издеваетесь? Засим, откланиваюсь. Ссылка

Всего записей: 318 | Зарегистр. 30-05-2020 | Отправлено: 03:59 10-11-2020 | Исправлено: KiloSub, 04:03 10-11-2020
kot1313



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

Всего записей: 2305 | Зарегистр. 11-12-2002 | Отправлено: 05:43 10-11-2020 | Исправлено: kot1313, 19:32 21-01-2021
insorg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313
Цитата:
сделать папку readonlу по хоткею
1. Только папку, или папку+содержимое?
2. По условию - стать курсором, или обязательно зайти в неё?
От этого решения будут разные...

Всего записей: 1731 | Зарегистр. 04-11-2010 | Отправлено: 09:30 10-11-2020 | Исправлено: insorg, 09:31 10-11-2020
Sinclair83

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извините, что вклиниваюсь в разговор.
 
Если правильно понял kot1313, то ему нужно было всё делать в проводнике (без использования TC и прочих файловых менеджеров и т.д.). Проблема в том, что cmd совсем не подходит для перечисления дочерних окон.
То есть вопрос был поставлен примерно так: нажать Win+E -> выбор некоторой папки -> далее нажав заданную комбинацию клавиш сделать выбранную папку скрытой. Да, про содержимое действительно речи не было. При использовании 'explorer.exe' видимо нужно зайти в папку.

Всего записей: 740 | Зарегистр. 07-01-2009 | Отправлено: 09:55 10-11-2020
ALEKCEN



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

Цитата:
мне проще всего вообще C#, в несколько строчек: Ссылка.  

не,ну неплохо тоже,правда хз,как мне это может помочь)
мне-то надо именно в виде текста,что-то типо этого:
net start AeLookupSvc
sc config AeLookupSvc start= auto
 
К слову,подкинули ещё пример в повершеле:
echo get-service -name *
Get-Service | Format-Table name #gsv | ft name
pause
первую строку специально закомментировал,ибо она не совсем то выводит или...совсем не то...и в текстовый файл не выводит в итоге оба варианта(

Всего записей: 676 | Зарегистр. 08-04-2008 | Отправлено: 11:02 10-11-2020
bytie

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

Цитата:
короче,я просто хочу реарганизовать весь запуск служб у себя на компе и соответственно - какие-то службы остановить,какие-то запустить

Может лучше в сторону DSC копать? в частности
Код:
Get-DscResource -Name Service

 
Можно как-то так сделать

Код:
$srv = "AJRouter",                           # Служба маршрутизатора AllJoyn
"AppVClient",                                # Microsoft App-V Client
"BITS",                                      # Фоновая интеллектуальная служба передачи (BITS)
"diagnosticshub.standardcollector.service",  # Стандартная служба сборщика центра диагностики Microsoft (R)
"dmwappushservice",                          # Служба маршрутизации push-сообщений на основе протокола WAP (Wireless Application Protocol) для управления устройствами
"LanmanServer",                              # Сервер
"lfsvc",                                     # Служба географического положения
"mpssvc",                                    # Брандмауэр Защитника Windows
"NetSetupSvc",                               # Служба настройки сети
"NetTcpPortSharing",                         # Служба общего доступа к портам Net.Tcp
"OneSyncSvc*",                               # OneSyncSvc                                    отключение только через ключ реестра
"PimIndexMaintenanceSvc*",                   # PimIndexMaintenanceSvc                        отключение только через ключ реестра
"RemoteAccess",                              # Маршрутизация и удаленный доступ
"RemoteRegistry",                            # Удаленный реестр
"RetailDemo",                                # Служба демонстрации магазина
"SecurityHealthService",                     # Служба Центра безопасности Защитника Windows
"Sense",                                     # Служба Advanced Threat Protection в Защитнике Windows
"shpamsvc",                                  # Shared PC Account Manager
"SmsRouter",                                 # Служба маршрутизатора SMS Microsoft Windows.
"swprv",                                     # Программный поставщик теневого копирования (Microsoft)
"tzautoupdate",                              # Автоматическое обновление часового пояса
"UevAgentService",                           # Служба виртуализации взаимодействия с пользователем
"UsoSvc",                                    # Update Orchestrator Service
"VSS",                                       # Теневое копирование тома
"VSStandardCollectorService150",             # Visual Studio Standard Collector Service 150
"WaaSMedicSvc",                              # Windows Update Medic Service
"WbioSrvc",                                  # Биометрическая служба Windows
"WdNisSvc",                                  # Служба проверки сети Windows Defender Antivirus
"WinDefend",                                 # Антивирусная программа "Защитника Windows"
"WinRM",                                     # Служба удаленного управления Windows (WS-Management)
"wisvc",                                     # Служба предварительной оценки Windows
"WpcMonSvc",                                 # Родительский контроль
"wscsvc",                                    # Центр обеспечения безопасности
"WSearch",                                   # Windows Search
"xbgm",                                      # Xbox Game Monitoring
"XblAuthManager",                            # Диспетчер проверки подлинности Xbox Live
"XblGameSave",                               # Сохранение игр на Xbox Live
"XboxGipSvc",                                # Xbox Accessory Management Service
"XboxNetApiSvc",                             # Сетевая служба Xbox Live
 
$srv | foreach { Get-Service $_ } | Select-Object Name,StartType,Status,DisplayName | Sort-Object -Property "Name" | Out-Host
 

и вместо
Код:
get-service
сделать
Код:
set-service $_ -StartupType Disabled

Всего записей: 254 | Зарегистр. 18-08-2005 | Отправлено: 11:11 10-11-2020 | Исправлено: bytie, 11:41 10-11-2020
GCRaistlin



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

Цитата:
повторите Ваш алгоритм с использованием TC поэтапно

... и в теме по TC, а не здесь.

----------
Magically yours
Raistlin

Всего записей: 2988 | Зарегистр. 18-04-2005 | Отправлено: 13:22 10-11-2020
KiloSub



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bytie
Я так понял, что нужна наглядная заготовка  
Подробнее...
но ведь для этой заготовки тоже нужен автомат - какую службу как обрабатывать, ведь не руками же каждый раз менять, просматривая 200-300 служб.
Ссылка создаст рядом шаблон - текстовый файл, то там у всех стоит start и auto.

Всего записей: 318 | Зарегистр. 30-05-2020 | Отправлено: 13:23 10-11-2020 | Исправлено: KiloSub, 13:35 10-11-2020
kot1313



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

Всего записей: 2305 | Зарегистр. 11-12-2002 | Отправлено: 16:48 10-11-2020 | Исправлено: kot1313, 19:30 21-01-2021
insorg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313
Если для проводника, то мне видится это примерно так:
Идём в папку SendTo своего пользователя, туда кладём батник с удобным названием и содержимым что-то вроде attrib +r "%1". Плюс-минус поправить синтаксис по ситуации, этот вариант я не проверял, только даю направление.
Вызывать через пункт меню "Отправить".
Можно, конечно, правкой реестра создать пункт в контекстном меню для файлов и папок, в котором уже туда прописать ту же команду, но этот вариант мне видится более удобным для отладки.

Всего записей: 1731 | Зарегистр. 04-11-2010 | Отправлено: 17:00 10-11-2020 | Исправлено: insorg, 17:02 10-11-2020
kot1313



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg
Вариант с контекстным меню я и использую уже давно (он прост и надёжен).
На текущий момент он лучший. Я об этом написал недавно в этом топике.
Вариант с SendTo рабочий, тока неудобный - движений мышкой в разы больше ...

Всего записей: 2305 | Зарегистр. 11-12-2002 | Отправлено: 17:10 10-11-2020
ALEKCEN



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

Цитата:
Get-DscResource -Name Service

честно говоря - не уловил смысл(

Всего записей: 676 | Зарегистр. 08-04-2008 | Отправлено: 18:49 10-11-2020
Sinclair83

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313
 
Да, данную задачу лучше решать в TC.
Посмотрел, что можно сделать с проводником и получился такой вариант.
Создать ярлык на раб. столе и назначить комбинацию горяч. кл. Открыть папку в проводнике и нажать hotkey. Да, не бат это.
Результат = msgbox с полным путём до открытой папки. Как лучше передать результат в бат?  
Через файл некрасиво, но довольно распространнённый способ.
 
Тестировал только на XP и 7. Обе ОС - RUS. И обе ОС - x86, но должно и на x64 работать. Это просто набросок!
 
P.S. Забыл сказать, что в 'семёрке' атрибут для папки "Только для чтения" выставляется только - (применимо только к файлам в папке). За XP сейчас уже не скажу.

Всего записей: 740 | Зарегистр. 07-01-2009 | Отправлено: 19:18 10-11-2020 | Исправлено: Sinclair83, 19:22 10-11-2020
Открыть новую тему     Написать ответ в эту тему

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

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии - bat, cmd


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru