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

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

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

Maz



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

Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!! Чтобы не копировались концевые пробелы из форума, жмите на ссылку "Редактировать" в посте, и уже из редактора копируйте батник без пробелов.
 
Примечание: Большие куски кода заключайте в тэг [ 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.10 до Windows 11 +Win95cmd +ReactOS) и command.com (DOS 5.0 и выше). Старые командные процессоры можно запускать на более новых ОС, хотя не всё может работать корректно. Подробная документация по командам cmd.exe и стандартным утилитам ОС для NT 3.51, NT 5.0 (Windows 2000) и NT 5.2 (Windows Server 2003). Сборник представляет исторический интерес, а также незаменим для тех, у кого появилось желание сделать свои скрипты работоспобными не только на своей версии ОС.
 
· Большой сборник одним архивом: Сотни Win32 утилит командной строки, нетривиальные .cmd файлы, .bat miniperl скрипты (не требующие полноценной установки Perl), FAR Manager с плагинами и настройками, разное для DOS/DOSBox (откуда под Win32 интерес представляют три продвинутых "мультисистемных" .bat файла да ещё, может быть, оболочка Necromancer DOS Navigator с поддержкой LFN и доступом к буферу обмена Windows). Краткие описания всего - в файликах files.bbs

Всего записей: 39366 | Зарегистр. 26-02-2002 | Отправлено: 22:41 20-06-2024 | Исправлено: Maz, 21:52 28-09-2024
GCRaistlin



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

Цитата:
правильную тему выбрал или нет

Нет.

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

Всего записей: 4262 | Зарегистр. 18-04-2005 | Отправлено: 18:04 08-10-2024
griboed

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

Код:
 
@echo off
(
    echo select disk 1
    echo select partition 2
    echo assign letter=g
) | diskpart
pause
 

... как пример

Всего записей: 7 | Зарегистр. 10-05-2024 | Отправлено: 09:28 09-10-2024 | Исправлено: griboed, 09:29 09-10-2024
Radanius



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
griboed
Спасибо! Получилось [?]

Всего записей: 1674 | Зарегистр. 10-08-2009 | Отправлено: 10:39 10-10-2024 | Исправлено: Radanius, 14:43 14-10-2024
WiperX



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветствую! Подскажите пожалуйста как заблочить доступ к ключу реестра с помощью утилиты SetACL, в моем случае это HKLM\SOFTWARE\Netgate\FortKnox Firewall. Пробовал так

Код:
SetACL.exe -on "HKLM\SOFTWARE\Netgate\FortKnox Firewall" -ot reg -actn deny

но выдает ошибку ERROR in command line: Invalid action specified: deny!
 
westlife
Пишет в консоли что мол типа норм, но прога свое значение ставит
---
Вот как должно быть (нашелся бантик )
 
32/64BiT

Код:
SetACL.exe -on "hklm\SOFTWARE\Netgate\FortKnox Firewall"  -ot reg -actn ace -ace "n:System;p:set_val;m:deny"

Спасибо камраду ChVL

Всего записей: 1041 | Зарегистр. 17-03-2009 | Отправлено: 01:47 14-10-2024 | Исправлено: WiperX, 19:17 15-10-2024
westlife



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

Цитата:
но выдает ошибку ERROR in command line: Invalid action specified: deny!

Там у них не очень очевидно и понятно написано, вот их описания:
https://helgeklein.com/setacl/documentation/command-line-version-setacl-exe/
делал очень давно так, тут блокировка установки значения для текущего юзера, без наследования:

Код:
%SetACL% -on "%KEY%\UserChoice" -ot reg -actn ace -ace "n:%ComputerName%\%UserName%;p:set_val;m:deny;i:np" -silent

придется разобраться, но так уже проще будет.
 
это убрать блок:

Код:
%SetACL% -on "%KEY%\UserChoice" -ot reg -actn clear -clr dacl -actn setprot -op dacl:np -silent


Всего записей: 1753 | Зарегистр. 12-12-2006 | Отправлено: 02:33 14-10-2024 | Исправлено: westlife, 02:38 14-10-2024
Arcadaw

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Запускаю батник под админом, т.к. в батнике активируются пару правил в виндофаере. Но в батнике еще запускается прога, которую не надо запускать под админом.
Как запустить из этого батника прогу без админа? А эта прога при каждом запуске сует в виндофаер свои правила.

Всего записей: 1589 | Зарегистр. 25-03-2004 | Отправлено: 20:48 17-10-2024
Roman_Hayretdinov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arcadaw
Цитата:
Как запустить из этого батника прогу без админа?

При помощи команды runas

Всего записей: 121 | Зарегистр. 19-12-2021 | Отправлено: 23:14 17-10-2024
Arcadaw

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

Цитата:
 При помощи команды runas  

Пробовал и у меня запрашиваент пароль обычного пользователя. Хотелось бы, чтобы не запрашивало а просто исполяняло че велел. Либо я неправильно команду оформил.

Всего записей: 1589 | Зарегистр. 25-03-2004 | Отправлено: 07:10 18-10-2024
alexnov66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arcadaw
в runas не предусмотрена команда с паролем, пароль вводится отдельно, также если у пользователя не установлен пароль то выдаст ошибку.
вот такой командой можно сохранить пароль, следующий запуск не будет спрашивать пароль.
runas /user:admin /savecred “C:\Windows\notepad.exe”
 
После указания пароля он сохранится в диспетчере паролей Windows и при следующем запуске команды runas под этим же пользователем с ключом /savecred система автоматически воспользуешься сохраненным паролем, а не будет запрашивать его повторно.

Всего записей: 1500 | Зарегистр. 29-08-2005 | Отправлено: 08:59 18-10-2024 | Исправлено: alexnov66, 09:19 18-10-2024
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arcadaw
Если вы запустили батник из-под админа, он исполняется под админской записью и ничего не знает о том, под каким пользователем вы работаете.

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

Всего записей: 4262 | Зарегистр. 18-04-2005 | Отправлено: 09:14 18-10-2024
Arcadaw

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alexnov66
GCRaistlin
Спасибо большое. Попробую.
 
Получится ли запустить из батника, который уже был запущен как админ с помощью ярлыка такую команду:
runas /user:user /savecred “C:\Windows\notepad.exe”

Всего записей: 1589 | Зарегистр. 25-03-2004 | Отправлено: 09:19 18-10-2024
alexnov66



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arcadaw
это батник запускается от админа а не прописанные команды в нём, в команде будет фигурировать пользователь другой не с правами администратора.
если это делается дома то пойдёт, если это где доступ к компьютеру имеют не один десяток людей то не рекомендую так сохранять пароль а тем более пользователей с правами администратора.
ключ /savecred не работает в Home редакциях Windows.

Всего записей: 1500 | Зарегистр. 29-08-2005 | Отправлено: 09:23 18-10-2024 | Исправлено: alexnov66, 09:40 18-10-2024
Arcadaw

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

Цитата:
это батник запускается от админа

Ну не фига. У меня в батнике запуск проги, активация/деактивация правл виндофаера. И если батник запускается с ярлыка как админ, то все команды в этом батнике исполняются от админа.
Иначе не получилось бы активация/деактивация правл виндофаера или прога не добавляла бы в виндофаер свои правила.
Ну попробую. Да, конечно, дома.
Спасибо.

Всего записей: 1589 | Зарегистр. 25-03-2004 | Отправлено: 09:45 18-10-2024
westlife



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

Цитата:
Запускаю батник под админом, т.к. в батнике активируются пару правил в виндофаере. Но в батнике еще запускается прога, которую не надо запускать под админом.
Как запустить из этого батника прогу без админа? А эта прога при каждом запуске сует в виндофаер свои правила.

По простому вот как вариант, батник без админ прав:

Код:
@Echo off
chcp 65001 >nul
cd /d "%~dp0"
 
start "" AdminLnkStartBat.lnk
start "" notepad.exe  
 
exit

 
запускает например ярлык с админ правами для запуска другого батника под админом, не ожидая его и запускает прогу без админ прав далее: https://i.imgur.com/L8q5CWK.png

Всего записей: 1753 | Зарегистр. 12-12-2006 | Отправлено: 12:18 18-10-2024
Roman_Hayretdinov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alexnov66
Цитата:
в runas не предусмотрена команда с паролем, пароль вводится отдельно

Такая конструкция по идее должна автоматически вводить пароль:
Код:
echo PASSWORD|runas /user:Domain\Administrator program.exe

Всего записей: 121 | Зарегистр. 19-12-2021 | Отправлено: 13:16 18-10-2024 | Исправлено: Roman_Hayretdinov, 13:17 18-10-2024
DeZz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в win 11 24h2 потерли WMIC
 
как теперь в батнике ответить на вопрос "какая ОС у юзера? а ) <10 б) 10 в) 11" ?

Всего записей: 1289 | Зарегистр. 23-01-2006 | Отправлено: 17:43 19-10-2024
Roman_Hayretdinov



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

Код:
for /F "delims=." %%A in ('ver') do set res=%%A
set/a ver=%res:~-2%

Ну и далее при помощи команды IF определять, какая версия, например IF %ver% EQU 5 (echo У вас Windows 2000 или XP или Server 2003) ELSE IF %ver% EQU 6 (echo У вас Windows Vista или Семёрка) и так далее

Всего записей: 121 | Зарегистр. 19-12-2021 | Отправлено: 18:20 19-10-2024
Simple Code



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

Цитата:
как теперь в батнике ответить на вопрос "какая ОС у юзера? а ) <10 б) 10 в) 11" ?

Сразу выводит версию без условий и прочих сравнений. Работает безотказно, проверено временем.
Использование: call :VerWin "Имя переменной, где будет хранится версия ОС"

Код:
 
@echo off
 
call :VerWin "VerWin"
echo Version: %VerWin%
pause >nul & exit
 
:VerWin [%1 Variable Name]
for /F "Tokens=*" %%i in ('powershell.exe -NoP -NoL -NonI -EP Bp -c "(gwmi Win32_OperatingSystem).Caption -Replace '[^0-9.]',''"') do (set "%~1=%%~i") & exit /b
 

Всего записей: 285 | Зарегистр. 19-11-2022 | Отправлено: 18:50 19-10-2024
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DeZz
http://forum.ru-board.com/topic.cgi?forum=5&topic=50615&start=3280#14 [?]

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

Всего записей: 4262 | Зарегистр. 18-04-2005 | Отправлено: 18:57 19-10-2024
DeZz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Simple Code
выглядит сбито, спс
 
подскажите еще как используя этот call ответить на вопрос:

Цитата:
а ) <10 б) 10 в) 11

Всего записей: 1289 | Зарегистр. 23-01-2006 | Отправлено: 19:43 19-10-2024
Открыть новую тему     Написать ответ в эту тему

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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru