[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 9 лет 2 месяца
  • Сообщений: 527
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
Приветствую. Наверное, вопрос глупый, но нагуглить не получилось)
Есть ли возможность запускать из cmd команды PowerShell в скрытом режиме, без вывода интерфейса PowerShell?
Можно ли скрыть эту синюю плашку?

[Цитировать]

    sergeysvirid
  • 104
  • Стаж: 9 лет
  • Сообщений: 2582
  • Репутация:127

    [+] [-]
  • Откуда: 65 регион (GMT+11)
cartmenezz,
Приветствую! aa
Может быть глупый ответ, но что:
start "" /b /w powershell
не, не то? ab-P.S.
А ну да, затупил. Команды powershell всё равно будут мелькать в консоли на цветном фоне... ah ag

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 9 лет 2 месяца
  • Сообщений: 527
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
sergeysvirid, aa
да, так мелькают, пробовал.
...
В принципе, было бы не так ужасно, иметь свернутое окно, но запуск через start "" /min не подходит, мне потом ещё надо проверить вывод команды, а при использовании отдельного окна, поиск не срабатывает (либо я просто невдупляю как правильно это переписать).
Упрощённо, мне нужно выполнить что-то типа этого:
PowerShell -command "Test-NetConnection -ComputerName 192.168.0.184 -Port 5555 -InformationLevel Quiet"| find /i "True" >nul&& echo OK
На самом деле будет проверяться несколько адресов, и будет промежуточная запись в файл, если порт открыт, но для теста сойдёт.
...
В принципе, вот так прокатывает:
start "" /min /w cmd /c "PowerShell -command "Test-NetConnection -ComputerName 192.168.0.184 -Port 5555 -InformationLevel Quiet"| find /i "True" >nul&& >1.txt echo OK"
Учитывая, что мне все равно будет нужен промежуточный файл, то вывод не на экран подходит...
...
Но, конечно, всё-таки хотелось бы узнать, нет ли у PowerShell какого-нибудь флага запуска для скрытия этой красоты, чтобы не городить такой огород

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 9 месяцев
  • Сообщений: 3817
  • Репутация:127

    [+] [-]
cartmenezz, aa
powershell -windowstyle hidden

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 9 лет 2 месяца
  • Сообщений: 527
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
Ander_73, aa
Этот ключ находил, но у меня он полностью окно cmd закрывает. Т.е. не просто вызывается PowerShell в скрытом режиме, а закрывается окно скрипта, или окно cmd, если просто в консоли писать.
Видимо потому что когда мы пишем "PowerShell команда.." выполнение идёт в этом же окне, вот оно и закрывается.
Пробовал только на одном ПК

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 9 месяцев
  • Сообщений: 3817
  • Репутация:127

    [+] [-]
cartmenezz, ну, как-бы да. А start powershell уже не модно? ad

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 9 лет 2 месяца
  • Сообщений: 527
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
102311А start powershell уже не модно?
1. окошко мелькает перед тем как закрыться
2. не получается перенаправить вывод команды в find
...
В любом случае, благодарю за помощь, но как оказалось - конкретно в этом случае овчинка выделки не стоит:
временно забил на "красивости" и просто опробовал нужную команду в скрипте, с полной проверкой адресов полученных через "arp -a", оказалось, что старый вариант через PortQry существенно быстрее (да и там нет всех этих сложностей с интерфейсом ... правда с некоторых пор Dr.Web-у он не нравится, несмотря на то, что разработчик Microsoft)

[Цитировать]

    TX2000
  • 13975
  • Стаж: 8 лет 6 месяцев
  • Сообщений: 132
  • Репутация:21

    [+] [-]
Возможно, это может быть полезно:
run-hidden (Инструмент командной строки, 27 КБ) запускает консольные приложения Windows, такие как PowerShell, со скрытым окном консоли.
Пример командной строки:
run-hidden powershell -command calc.exe
aa


Последний раз редактировалось: TX2000 (2024-01-29 13:55), всего редактировалось 2 раз(а)

[Цитировать]

    bighead
  • 29484
  • Стаж: 3 года
  • Сообщений: 388
  • Репутация:24

    [+] [-]
TX2000,
aa
Какая-то странная ссылка, исходники есть, на этом всё.
Здесь можно скачать

[Цитировать]

    TX2000
  • 13975
  • Стаж: 8 лет 6 месяцев
  • Сообщений: 132
  • Репутация:21

    [+] [-]
bighead,
Спасибо! aa
я ошибочно предоставил первоначальную ссылку, которую нашел первой (вилка)

[Цитировать]

    bighead
  • 29484
  • Стаж: 3 года
  • Сообщений: 388
  • Репутация:24

    [+] [-]
Не батник, но темы по vbs я не нашёл :)
Простой скрипт для подключение сетевого диска с именем, но он отваливается при перезагрузке, может кто знает что надо добавить, чтобы было аналогично поставленной галке "восстанавливать подключение при входе в систему"
On Error Resume Next
Set objWshNetwork = CreateObject( "WScript.Network" )
Set objShell = CreateObject("Shell.Application")
MapDrive "Y:", "\\share\share_folder", "Шара"
Sub MapDrive(strDrive, strPath, strName)
   On Error Resume Next
   objWshNetwork.RemoveNetworkDrive strDrive, vbTrue, vbTrue
   objWshNetwork.MapNetworkDrive strDrive, strPath, vbTrue
   objShell.NameSpace(strDrive).Self.Name = strName
End Sub
Ander_73, спасибо, понял где ошибка))

[Цитировать]

    Valek271183
  • 14580
  • Стаж: 8 лет 1 месяц
  • Сообщений: 109
  • Репутация:1

    [+] [-]
Подскажите, хочу батником удалить несколько ассоциаций у яндекс.браузера, но у него при каждой установке новое имя в реестре, одинаковое только начало - Yandex. Как вывести имя ветки реестра в переменную
вот полный путь
HKEY_CURRENT_USER\Software\Clients\StartMenuInternet\Yandex.MZL2OZ67OVHNYI4EBQT2PPU4EI\Capabilities\FileAssociations
вот эта часть после надписи Yandex. всегда разная MZL2OZ67OVHNYI4EBQT2PPU4EI
https://disk.yandex.ru/i/sp7bXn4a-Mp61w
Как это можно сделать?

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 9 месяцев
  • Сообщений: 3817
  • Репутация:127

    [+] [-]
for /f "delims=" %%i in (
'reg query "HKEY_CURRENT_USER\Software\Clients\StartMenuInternet" /f "Yandex*"'
) do set fname=%%~nxi& goto next
:next
echo %fname%

[Цитировать]

    Valek271183
  • 14580
  • Стаж: 8 лет 1 месяц
  • Сообщений: 109
  • Репутация:1

    [+] [-]
Ander_73, а как из этой части выделить то, что идёт после Yandex. ?
Пытаюсь удалить из
reg delete "HKEY_CLASSES_ROOT\.jpeg\OpenWithProgids" /v Yandexjpeg.MZL2OZ67OVHNYI4EBQT2PPU4EI /f
но здесь для каждого расширения дописано например YandexJPEG.MZL2OZ67OVHNYI4EBQT2PPU4EI или YandexPNG.MZL2OZ67OVHNYI4EBQT2PPU4EI
Как указать, что нужны только символы после Yandex. ?

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 9 месяцев
  • Сообщений: 3817
  • Репутация:127

    [+] [-]
) do set digi_code=%%~xi& goto next
Значение переменной будет начинаться с точки, но, надеюсь, эту проблему можно решить самостоятельно? ad

Страница 89 из 94


Показать сообщения:    

Текущее время: 23-Ноя 21:39

Часовой пояс: UTC + 3


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