Перейти из форума на сайт.Реклама на Ru.Board


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

Модерирует : 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 64 65 66 67 68 69 70

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

Uriu

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

PowerShell 1.0 -  На текущий момент совершенно неактуальная версия, интересная только для истории. /Прямые ссылки/
PowerShell 2.0 и WinRM 2.0 - Последняя версия, работающая на Windows XP и Windows 2003 (Ещё) /Прямые ссылки/
PowerShell 3.0 (Windows Management Framework 3.0)
PowerShell 4.0 (Windows Management Framework 4.0)
PowerShell 5.0 (Windows Management Framework 5.0)
PowerShell 5.1 (Windows Management Framework 5.1)
PowerShell 6.0




 
Что бы ассоциировать скрипты с PowerShell, аналогично выполнению .bat/.cmd-файлов
нужно в командной строке набрать следующую команду  
ftype microsoft.powershellscript.1=%windir%\system32\windowspowershell\v1.0\powershell.exe -file "%1" %*  
 
Что бы PowerShell не задавал вопрос о том, что скрипты не подписаны, ввести в нем команду
set-executionpolicy unrestricted
или в командной строке
powershell Set-ExecutionPolicy Unrestricted -force
(для этих 2-х действий требуются административные права)
 
Если используете "белый список" в брандмауэре Windows, то для работы сценариев в сети необходимо создать 2 исходящих правила для svchost.exe и PowerShell.exe.
 
 


Внимание! В отличие от батников кодировка скриптов на PowerShell должна быть 1251 (ANSI)


Расширение возможностей PowerShell
Функции
* Write-Color
* PowerTab --- Расширение функций клавиши Tab
Провайдеры
Готовые скрипты
* Ошибки и предупреждения в журнале событий по электронной почте (в4.0)
 


Работа со сценариями в Windows PowerShell
Раздел в MSDN
Краткие справочники по Windows PowerShell 3.0 (english)
Windows PowerShell Франк Кох (БЕРН)  Разработчик и пропагандист платформы. На русском языке в формате pdf и doc

Всего записей: 340 | Зарегистр. 25-11-2004 | Отправлено: 07:13 23-03-2006 | Исправлено: KapralBel, 08:39 18-01-2018
2as

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

Цитата:
Дело было в escape-символе.

ну тогда вполне себе сработало бы и это:

Цитата:
 
б. блок операторов:  

Код:
$getservice = Get-Service -Name wuauserv; If($getservice.Status -eq 'Running') {Start-Sleep -s 10; Start-Process -FilePath D:\Программы\Прочее\1.bat} Else {Start-Process -FilePath D:\1.bat}
сохранить, например в D:\Test\file.ps1,  тогда
 
Код:
$action = New-ScheduledTaskAction -Execute "Powershell.exe" -Argument '-File D:\Test\file.ps1'
...
 
 

К тому же в File.ps1 можно было перенести функционал Прочее\1.bat  и D:\Test\file.ps1. В виде отдельных функций, например.  
P.S. Вы случайно не кумулятивное обновление из локальных источников ваяете?

Всего записей: 3267 | Зарегистр. 09-09-2003 | Отправлено: 04:49 22-09-2017
farag



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

Цитата:
из локальных источников ваяете

http://gallery.ru-board.com/topic.cgi?forum=5&topic=39544&start=981&limit=1&m=1#1

Цитата:
сохранить, например в D:\Test\file.ps1,  тогда  

Ненавижу плодить файлы
Другой вопрос: есть скрипт, который раскрывает окно Диспетчера задач и

Код:
 
If (!(Test-Path HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager))
{
    New-Item -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager -Force
}
$preferences = Get-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager -Name Preferences -ErrorAction SilentlyContinue
If (!($preferences))
{
    $taskmgr = Get-Process Taskmgr -ErrorAction SilentlyContinue
    If ($taskmgr)
    {
        $taskmgr | Stop-Process -Force
    }
    Start-Process -FilePath Taskmgr
}
$preferences = Get-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager -Name Preferences -ErrorAction SilentlyContinue
$preferences.Preferences[28] = 0
New-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager -Name Preferences -Type Binary -Value $preferences.Preferences -Force
If ($taskmgr)
{
    $taskmgr | Stop-Process -Force
}
Start-Process -FilePath Taskmgr
 

работает идеально на Win 10, а в Win 8.1 ошибка

Код:
 
+ $preferences.Preferences[28] = 0
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     + CategoryInfo          : InvalidOperation: ( [], RuntimeException
     + FullyQualifiedErrorId : NullArray
 

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 17:45 22-09-2017 | Исправлено: farag, 17:47 22-09-2017
LevT



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

Цитата:
работает идеально на Win 10, а в Win 8.1 ошибка  

 
Ещё бы
Яркий пример безмозглых скриптописателей и такого же гугления!
 

Код:
$preferences.Preferences[28]

почему вы решили, что 29-й параметр в этом ключе реестра навеки прибит гвоздями?
никто не гарантировал даже то, что параметры будут возвращены в одинаковом порядке...
 
 
Добавлено:
ищите, как эта "айтемпропертя" называется - и впредь обращайтесь к ней по имени!

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 18:45 22-09-2017 | Исправлено: LevT, 18:48 22-09-2017
farag



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

Цитата:
безмозглых скриптописателей

А как надо? Я сам учу PS. Никто мне не помогает ))

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 19:15 22-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
farag
я точно так же сам учу.
Но вроде как умею понимать написанное.  
 
Вижу попытку изменить 29-й по (неизвестному) счёту элемент какого-то массива, связанного с реестром.
Уже одно это за гранью. Который это написал чувак, явно неменяем.
 
И если это каким-то чудом где-то работает, то удвоенное чудачество ожидать, что оно сработает в другом месте.

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 19:25 22-09-2017 | Исправлено: LevT, 19:31 22-09-2017
farag



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

Цитата:
Уже одно это за гранью.

Как же тогда сделать так, чтобы автоматически раскрыть окно у Диспетчера задач?

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 19:37 22-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
передо мной сейчас стоят другие задачи
А вместо процитированного абсурда я написал выше, что делать: звать пропертю по имени.

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 19:49 22-09-2017
farag



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

Цитата:
звать пропертю по имени

Можно конкретный код?

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 20:12 22-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну, там где это работает - посмотрите, что такое $preferences.Preferences[28]  
например через  | fl *
найдите, как зверька зовут.

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 21:00 22-09-2017
westlife



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
farag
Диспетчер задач не принимает параметр "на весь экран" ни из PS ни из CMD

Код:
powershell start-process taskmgr -windowstyle Maximized
cmd /c start /max taskmgr

На блокноте работают эти оба варианта.  
А ваш сценарий у меня на 10 не работает.
 
Но вот через функцию PS можно изменить состояние запущенного окна:
Подробнее
 

Всего записей: 519 | Зарегистр. 12-12-2006 | Отправлено: 22:22 22-09-2017
2as

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

Цитата:
Ненавижу плодить файлы

Вы невнимательны,  там же далее было предложено:

Цитата:
в File.ps1 можно было перенести функционал Прочее\1.bat  и D:\Test\file.ps1. В виде отдельных функций, например.
,что как раз и уменьшило бы кол-во файлов )))

Всего записей: 3267 | Зарегистр. 09-09-2003 | Отправлено: 23:06 22-09-2017
farag



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

Цитата:
на весь экран

Это не на весь экран, а просто показать больше информации в окне.

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 00:08 23-09-2017
westlife



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

Цитата:
Это не на весь экран, а просто показать больше информации в окне.

Теперь понял вашу мысль. Это можно назвать "подробный режим" диспетчера.

Всего записей: 519 | Зарегистр. 12-12-2006 | Отправлено: 00:15 23-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Посмотрел я с утра на ваши преференсы.
Оказывается, те ещё укурки сами авторы таскманагера, которые придумали хранить в реестре почти четыре тысячи безымянных настроек. (Молодцы вообще никому ничего не должны, и настройки те могут значить любые разные вещи в разных системах)
За ними следуют те, кто широко публикуют результат тяп-ляп реверсинга где-то кроме "Тестирования", и вселяют пустые надежды в доверчивых граждан  
 
farag
Извиняюсь за вчерашнюю резкость.
 
westlife
у таскманагера окно с нестандартным поведением.
Я когда случайно отключил там "подробный режим"- выпал в осадок и спрашивал на форумах, как избавиться от "улыбки чеширского кота" вместо таскманагера.

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 09:33 23-09-2017 | Исправлено: LevT, 09:47 23-09-2017
farag



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

Цитата:
укурки сами авторы таскманагера

Имеем, что имеем
Вот что работает уже, но при выполнении скрипта с запущенным Диспетчером задач

Код:
 
$taskmgrPath = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager'
If (!(Test-Path $taskmgrPath))
{
    New-Item -Path $taskmgrPath -Force
}
$taskmgr = Get-Process Taskmgr -ErrorAction SilentlyContinue
If ($taskmgr)
{
    #$taskmgr | Stop-Process -Force
    $taskmgr | Wait-Process
}
$preferences = Get-ItemProperty -Path $taskmgrPath -Name Preferences -ErrorAction SilentlyContinue
If (!($preferences))
{
    Start-Process -FilePath Taskmgr
    $taskmgr = Get-Process Taskmgr -ErrorAction SilentlyContinue
    If ($taskmgr)
    {
       $taskmgr | Wait-Process
    }
    $preferences = Get-ItemProperty -Path $taskmgrPath -Name Preferences -ErrorAction SilentlyContinue
}
$preferences.Preferences[28] = 0
New-ItemProperty -Path $taskmgrPath -Name Preferences -Type Binary -Value $preferences.Preferences -Force
If ($taskmgr)
{
   $taskmgr | Stop-Process -Force
}
Start-Process -FilePath Taskmgr
 

Диспетчер задач не перезапускается, и скрипт просто висит, пытаясь что-то сделать.

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 11:53 23-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
farag
PoSH не может заместить problem solving skills  
 
из задачи легко выделяется подзадача: узнать, где и как таскмгр сохраняет флаг "прятать интерфейс". Подзазача эта необходима для решения целиком (т.е. её не объедешь лежит на "критическом пути")  
 
Найденный скрипт - подсказка куда копать, но его авторы явно не были заинтересованы в 8.1.
Вы в отличие от них заинтересованы.  Обычно берут для начала procexp.exe от sysinternals и понеслась...  На руборде мобыть поможет Process Hacker (тут есть его разработчик)  
 
Но пошик-то тут при чём?
 
 

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 14:08 23-09-2017 | Исправлено: LevT, 14:15 23-09-2017
farag



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

Цитата:
Но пошик-то тут при чём?  

Ни при чем. Пошел выполнять задание.

Всего записей: 346 | Зарегистр. 27-07-2009 | Отправлено: 14:14 23-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если принять на веру, что настройки всегда вот в этом параметре - то пошиком можно сравнить "мешок с пропертями" до и после

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 14:17 23-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну и если серьёзно разбираться - то надо спросить реверсеров.
Вероятно, что в реестр "сериализуется" (в понимании тех укурков) "property bag" из какой-то библиотеки.  
Так что структура этого "мешка" должна быть известна заинтересованным лицам.

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 16:28 23-09-2017 | Исправлено: LevT, 18:56 23-09-2017
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2as
дочитался - вернее дослушался - до того места, где озвучено утверждение, что после v2 конфигурацию remoting сильно упростили.
Так что извиняйте за то, что не стал вникать в тот затеянный Вами выше разговор: я покамест счастливый человек меня просто не парят проблемы v2.
 
А для v3 + никаких "простыней" ненадоть!
 
 
Добавлено:
В частности, теперь по умолчанию ремотинг включён, но блочится фаером для публичных подключений.

Всего записей: 10099 | Зарегистр. 14-10-2001 | Отправлено: 18:56 23-09-2017
Открыть новую тему     Написать ответ в эту тему

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

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

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

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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru