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

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

Модерирует : KLASS, IFkO

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

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

KLASS



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Старые и смежные темы: по CMD и в Программах | по PowerShell | В помощь системному администратору | Прикладное программирование

PowerShell
Версии | Ассоциация и подпись сценариев
Сценарий для ассоциации файлов PowerShell и запуска неподписанных скриптов.
 
Прочее
  • Если используете "белый список" в брандмауэре Windows, то для работы сценариев в сети необходимо создать 2 исходящих правила для svchost.exe и PowerShell.exe.
  • В отличие от батников, кодировка скриптов на PowerShell должна быть 1251 (ANSI). Начиная с версии PowerShell Core 6.0, кодировка по умолчанию UTF8NoBOM.
Расширение возможностей
Функции
Write-Color
Output-DebugString
Провайдеры
Готовые скрипты
Ошибки и предупреждения в журнале событий по электронной почте (в4.0)
Преобразование алиасов в скриптах к полным командам.
Получение детализированной информации из файлов.
Скачивание файлов по списку из файла .csv, ведение лога
Компиляция страниц html сохранённых из браузера в chm
 
Полезные ссылки | Будет ли репозиторий PowerShell на ru-board?

Cmd
Для перекодирования кирилицы 866<—>1251 пользуйтесь онлайн сервисом Перекодировщик кириллицы
 
Готовые решения и частые вопросы
 
Описания работы команд и символов участниками темы:
setlocal enabledelayedexpansion и переменные окружения
символы & и && в командной строке
Переменная %0
 
Полезные ссылки и утилиты

WSH (VBScript, JScript)
Программирование "удобняшек" на VBScript

Примечания:
• Большие куски кода заключайте в тэг [ more ]
• Чтобы не копировались концевые пробелы из форума, жмите на ссылку "Редактировать" в посте, и уже из редактора копируйте код без пробелов иначе сценарий может работать неправильно. Также для удаления концевых пробелов пользуйтесь скриптом от Nagual, или VBS-Скрипт-Модулем от ViSiToR.
• Сторонние консольные утилиты можно использовать только в виде готового решения и только в рамках сценариев. Никаких обсуждений и обучений работе с утилитами не предусмотрено и прямо запрещено правилами топика.
Шапка и около-темные вопросы |

Всего записей: 7634 | Зарегистр. 12-10-2001 | Отправлено: 13:40 17-02-2018 | Исправлено: m00slim25, 22:28 01-11-2018
Alex_Piggy

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

Цитата:
переменная  data не определена

А "set /p data=" - это что?

Цитата:
переменной нужно присваивать любое значение перед запросом и делать проверку...

Нет. Если переменная не определена - вместо нее ничего не подставиться (пустая строка). Команда  "echo t%qwertyuiop%e%asdfghjkl%s%zxcvbnm%t" выведет просто "test".

Цитата:
я не вникал в предыдущие обсуждения

Проблема c вводом пользователя, если какие-то данные передаются на батник через pipe.

Всего записей: 1614 | Зарегистр. 07-08-2002 | Отправлено: 14:42 30-01-2019 | Исправлено: Alex_Piggy, 14:45 30-01-2019
YuS_2



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

Цитата:
Я его дал в полном объеме.

там  26-01-2019 последняя строка:

Цитата:
C:\Windows\system32>goto input  

и никаких повторений... поэтому анализировать что-либо проблематично, а воспроизводить ситуацию у себя ... ну, нет особого желания, сорри. Я бы всё это лучше перевёл на powershell...
 
Alex_Piggy

Цитата:
Нет, проблема не в этом.

Собственно, причин проблемы я и не определял, как раз... глубоко в смысл сценария не вникал.

Цитата:
echo 123 | tst.bat  

Ни в коде, ни в выводе из консоли, такого применения не заметил... возможно, невнимательно смотрел...

Всего записей: 2227 | Зарегистр. 03-02-2009 | Отправлено: 15:14 30-01-2019
Alex_Piggy

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

Цитата:
echo 123 | tst.bat  
Ни в коде, ни в выводе из консоли, такого применения не заметил... возможно, невнимательно смотрел...

Сценарии для Windows

Цитата:
Почему при запуске уходит в вечный цикл?
cmd.exe /C chcp 1251 | echo aaa | "create_sandboxie 2.0.bat"  

Всего записей: 1614 | Зарегистр. 07-08-2002 | Отправлено: 15:24 30-01-2019
2as

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

Цитата:
.. если команды выполняются от имени администратора

Правильнее будет "из-под учетной записи пользователя, имеющего права администратора".
что в принципе вполне логично, ибо: "Quod licet Iovi, non licet bovi."  )))

Всего записей: 3311 | Зарегистр. 09-09-2003 | Отправлено: 18:48 30-01-2019 | Исправлено: 2as, 18:49 30-01-2019
YuS_2



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

Цитата:
Сценарии для Windows

диситльна, слона-то и не приметил
 26-01-2019

Цитата:
cmd.exe /C chcp 1251 | echo aaa | "create_sandboxie 2.0.bat"

теперь понятно...
 
2as

Цитата:
Gравильнее будет

это да, формулировку можно(нужно) поправить, а суть и так понятна...

Всего записей: 2227 | Зарегистр. 03-02-2009 | Отправлено: 18:55 30-01-2019
Raf_SE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня стоит задачка: сконвертировать все .wav файлы во всех подпапках определённой директории в .opus. Использую для этого такой .bat скрипт:

Код:
for /R Folder %%i in (*.wav) do opusenc.exe --quiet "%%i" "%%i.opus"
del /s /q Folder\*.wav
Он работает чудестно, но на выходе получаются файлы AudioFile.wav.opus. Может ли кто скрипт переделать чтобы получались сразу AudioFile.opus? Не обязательно чтобы скрипт был на .bat

Всего записей: 1077 | Зарегистр. 06-08-2006 | Отправлено: 02:52 01-02-2019
NIKZZZZ



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

Код:
for /R Folder %%i in (*.wav) do opusenc.exe --quiet "%%fi" "%%~dpni.opus"
del /s /q Folder\*.wav  

Всего записей: 5010 | Зарегистр. 08-02-2006 | Отправлено: 03:04 01-02-2019
iNNOKENTIY21



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PowerShell
Админский профиль Microsoft.PowerShell_profile.ps1
Задаёт цвет для админской консоли.
Но нынче толком не пашет (Win-10 Pro x64 1809).
Как нынче такое делается?

Всего записей: 1244 | Зарегистр. 16-08-2012 | Отправлено: 18:44 03-02-2019
YuS_2



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

Цитата:
Но нынче толком не пашет

а конкретно в какой части не пашет?
 

Код:
$admin = (
    [security.principal.windowsprincipal][security.principal.windowsidentity]::getcurrent()
).isinrole([security.principal.windowsbuiltinrole] "administrator")
if ($admin){write-host Yes-yes',' admin! -for red}

Всего записей: 2227 | Зарегистр. 03-02-2009 | Отправлено: 19:17 03-02-2019 | Исправлено: YuS_2, 19:19 03-02-2019
iNNOKENTIY21



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

Цитата:
а конкретно в какой части не пашет?  

IsAdmin отрабатывает.
Цвета не закрепляются.
При запуске консоль красная, но фон всё равно значится darkmagneta не смотря на
Код:
[console]::backgroundcolor = ($background = "DarkRed")

 

Код:
PS C:\WINDOWS\system32> [console]::backgroundcolor
DarkMagenta

Всего записей: 1244 | Зарегистр. 16-08-2012 | Отправлено: 19:23 03-02-2019
YuS_2



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

Цитата:
Цвета не закрепляются.  

Тогда не знаю. У меня соответствует... но у меня и не 1809, проверить не на чем...

Всего записей: 2227 | Зарегистр. 03-02-2009 | Отправлено: 19:42 03-02-2019
westlife



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

Цитата:
Цвета не закрепляются.

Это проблема баганутого модуля PSReadline 2.0.0 (C:\Program Files\WindowsPowerShell\Modules\PSReadline\2.0.0),  
зачем его внедрили в систему не понятно. От него куча багов.
Пробовал заменить все файлы его на версию из 1607, все проблемы связанные с ним уходили, Включая проблемы с вводом кириллицы с зажатой клавишей шифт.
Но если его удалить, и подкинуть файлы со старой версией, то он не будет работать, надо именно заменить "в наглую". Я сильно не разбирался с этим, один раз попробовал и получилось.  
Лучше проверить на виртуалке сначала все досканально! И только потом принимать решение каким образом его заменить, а то потом обратно вернуть будет проблема.
Чтобы заменить саму dll, ее надо переименовать. И закинуть нужную dll, остальные файлы тоже нужно заменить. И перезапустить консоль PS.

Всего записей: 618 | Зарегистр. 12-12-2006 | Отправлено: 20:45 03-02-2019 | Исправлено: westlife, 20:55 03-02-2019
iNNOKENTIY21



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

Всего записей: 1244 | Зарегистр. 16-08-2012 | Отправлено: 21:08 03-02-2019
westlife



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

Цитата:
А если рядом поставить другую версию? ps вроде допускает такое, только не знаю как системе указать какую версию использовать.

Как указать не знаю, самое простое в профиль добавить выгрузку этой версии 2.0.0 и подключение нужной.
Возьмите версию 1.2, она же и в 1607.

Всего записей: 618 | Зарегистр. 12-12-2006 | Отправлено: 22:47 03-02-2019
iNNOKENTIY21



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
Да на виртуалке получилось, косяков пока нет. ну особо и не успел потестить.
Дистра под рукой небыло. Взял командой:

Код:
Install-Module -SkipPublisherCheck -Name PSReadLine -RequiredVersion 1.2 -Scope AllUsers
установилось в: C:\Program Files\WindowsPowerShell\Modules\PSReadline\ далее как в вашей инструкции, переименовал, заменил.
 

 
С выгрузкой/загрузкой баловался, не находит поддерживаемый модуль. Может из дистра винды будет сговорчивее.
 
Потестирую откат и на живую систему
 
Добавлено:
Вот и админская консоль раскрасилась и не теряет цвет.
 

 
Добавлено:
Из дистрибутива windows 1709 оказался модуль сговорчивее
 

Код:
C:\Users\iNNOKENTIY21\Desktop> Expand-Archive '.\PSReadLine 1709-1.2.zip' 'C:\Program Files\WindowsPowerShell\Modules\PSReadline\' -Force
C:\Users\iNNOKENTIY21\Desktop> Remove-Module -Name psreadline
C:\Users\iNNOKENTIY21\Desktop> import-module -name psreadline -RequiredVersion 1.2
C:\Users\iNNOKENTIY21\Desktop> Get-Module
 
ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Manifest   1.0.1.0    Microsoft.PowerShell.Archive        {Compress-Archive, Expand-Archive}
Manifest   3.1.0.0    Microsoft.PowerShell.Management     {Add-Computer, Add-Content, Checkpoint-Computer, Clear-Content...}
Manifest   3.1.0.0    Microsoft.PowerShell.Utility        {Add-Member, Add-Type, Clear-Variable, Compare-Object...}
Script     1.2        psreadline                          {Get-PSReadLineKeyHandler, Get-PSReadLineOption, Remove-PSReadLineKeyHandler, Set-PSReadLineKeyHandler...}

 
Вот только толку от этого никакого, заглавные буквы с шифтом не пашут
Замена по месту рулит. И файл из 1709 отличается от гитхабовского и галереи.

Всего записей: 1244 | Зарегистр. 16-08-2012 | Отправлено: 23:00 03-02-2019 | Исправлено: iNNOKENTIY21, 23:02 03-02-2019
YuS_2



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

Цитата:
проверить не на чем...

Ну, собственно, причину-то выяснили вроде...
Но, кстати, проверить, как оказалось, есть на чем.
v6.2.0-preview.4 Release of PowerShell Core - там происходит описанная ситуация и там тоже PSReadLine 2.0.0
т.е. баг этот править не собираются... ибо тянется он из версии в версию...
 
PS Обычная, физическая замена модуля, идущего в комплекте PoSh 6.2, на модуль от PoSh v5.1 (Win 10 1607), вполне решает проблему несохранения новых значений...

Всего записей: 2227 | Зарегистр. 03-02-2009 | Отправлено: 10:08 04-02-2019 | Исправлено: YuS_2, 10:30 04-02-2019
iNNOKENTIY21



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YuS_2
Спасибо, но я уже из дистра 1709 взял.
Написал даже скрипты установки/удаления.
 
Install.ps1 / Uninstall.ps1
 
Собственно комплект: Замена PSReadLine 2.0.0 на PSReadLine 1.2 из дистрибутива Windows 10 1709. Со скриптами установки/удаления.

Всего записей: 1244 | Зарегистр. 16-08-2012 | Отправлено: 11:32 04-02-2019 | Исправлено: iNNOKENTIY21, 11:37 04-02-2019
PhoenixUA

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
https://github.com/lzybkr/PSReadLine/issues/774
Оно?
Вроде поправили, но не зарелизили ещё...

Всего записей: 2138 | Зарегистр. 17-11-2005 | Отправлено: 11:47 04-02-2019
iNNOKENTIY21



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доигрался..
Цитата:
Указанный модуль "PSReadline" не был загружен, так как ни в одном из каталогов модулей не был обнаружен действительный файл модуля.

Только работало, десятки раз.. и как отрезало. Чё за магия?

Всего записей: 1244 | Зарегистр. 16-08-2012 | Отправлено: 12:49 04-02-2019
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21
PhoenixUA
Переместимся лучше туда:
 04-02-2019
там более уместно наше обсуждение, имхо...

Всего записей: 2227 | Зарегистр. 03-02-2009 | Отправлено: 13:53 04-02-2019 | Исправлено: YuS_2, 13:54 04-02-2019
Открыть новую тему     Написать ответ в эту тему

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

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Сценарии для Windows

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru

Рейтинг.ru