Запитання з тегом «powershell»

PowerShell - це міжплатформна командна лінія та сценарій утиліта від Microsoft. Використовуйте цей тег для запитань щодо написання та виконання сценаріїв PowerShell ТОЛЬКО. Питання програмування, характерні для міжплатформової версії PowerShell Core (Windows, macOS та Linux), повинні бути позначені тегами [powershell-core]. Питання щодо адміністрування системи слід задавати на сторінці Super User або Server Fault.

6
Обмежити глибину рекурсії Get-ChildItem
Я можу отримати всі підпункти рекурсивно, використовуючи цю команду: Get-ChildItem -recurse Але чи є спосіб обмежити глибину? Якщо я хочу лише повторити один або два рівні, наприклад?
82 powershell 

4
Як додати більше одного комп'ютера до списку надійних хостів за допомогою winrm
Для запуску команд PowerShell на машині з віддаленої машини ми повинні додати віддалену машину до списку надійних хостів на хост-машині. Я додаю машину A до надійних хостів машини B, використовуючи таку команду: winrm set winrm/config/client ‘@{TrustedHosts="machineA"}’ Як додати більше машин, скажімо машина C, машина D до списку надійних хостів машини …

3
Веб-запит Powershell без винятку винятків на 4xx / 5xx
Я пишу сценарій PowerShell, який повинен зробити веб-запит та перевірити код стану відповіді. Я спробував написати це: $client = new-object system.net.webclient $response = $client.DownloadData($url) а також це: $response = Invoke-WebRequest $url але коли веб-сторінка має код стану, який не є кодом стану успіху, PowerShell продовжує і видає виняток замість того, …
82 powershell 


9
Еквівалентно ключовому слову C # у використанні в PowerShell?
Коли я використовую інший об'єкт у .net-Framework в C #, я можу заощадити багато набору тексту, використовуючи директиву using. using FooCompany.Bar.Qux.Assembly.With.Ridiculous.Long.Namespace.I.Really.Mean.It; ... var blurb = new Thingamabob(); ... То чи є в Powershell спосіб зробити щось подібне? Я отримую доступ до багатьох об'єктів .net і не радий набирати текст $blurb …

4
Як правильно фільтрувати кілька рядків у сценарії копіювання PowerShell
Я використовую сценарій PowerShell з цієї відповіді для копіювання файлу. Проблема виникає, коли я хочу включити кілька типів файлів за допомогою фільтра. Get-ChildItem $originalPath -filter "*.htm" | ` foreach{ $targetFile = $htmPath + $_.FullName.SubString($originalPath.Length); ` New-Item -ItemType File -Path $targetFile -Force; ` Copy-Item $_.FullName -destination $targetFile } працює як мрія. …


3
Який рекомендований стиль кодування для PowerShell?
Чи існує рекомендований стиль кодування, як писати сценарії PowerShell? Справа не в тому, як структурувати код (скільки функцій, якщо використовувати модуль, ...). Йдеться про " як написати код, щоб він був читабельним ". У мовах програмування є деякі рекомендовані стилі кодування (що робити відступи , як відступи - пробіли / …

5
PowerShell - перемикачі Start-Process та Cmdline
Я можу запустити це чудово: $msbuild = "C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" start-process $msbuild -wait Але коли я запускаю цей код (нижче), я отримую повідомлення про помилку: $msbuild = "C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe /v:q /nologo" start-process $msbuild -wait Чи є спосіб передати параметри в MSBuild за допомогою стартового процесу? Я відкритий для того, щоб не використовувати стартовий …

5
Найбезпечніший спосіб запуску файлу BAT із сценарію Powershell
Я не можу отримати скрипт PowerShell для безпосереднього запуску файлу bat. Наприклад, це працює в командному рядку: .\\my-app\my-fle.bat Коли я додаю цю команду до сценарію, вона видає: The term '.\\my-app\my-file.bat' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the …

11
Ініціалізація масиву PowerShell
Який найкращий спосіб ініціалізувати масив у PowerShell? Наприклад, код $array = @() for($i=0; $i -lt 5;$i++) { $array[$i] = $FALSE } генерує помилку Array assignment failed because index '0' was out of range. At H:\Software\PowerShell\TestArray.ps1:4 char:10 + $array[$ <<<< i] = $FALSE

4
Як передати іменовані параметри за допомогою Invoke-Command?
У мене є сценарій, який я можу запустити віддалено за допомогою Invoke-Command Invoke-Command -ComputerName (Get-Content C:\Scripts\Servers.txt) ` -FilePath C:\Scripts\ArchiveEventLogs\ver5\ArchiveEventLogs.ps1 Поки я використовую параметри за замовчуванням, це працює нормально. Однак скрипт має 2 іменовані параметри [switch] (-Debug та -Clear) Як я можу передати переключені параметри через команду Invoke? Я спробував -ArgumentList, …

6
PSCustomObject для Hashtable
Який найпростіший спосіб перетворити a PSCustomObjectна a Hashtable? Він відображається так само, як один із оператором splat, фігурними дужками і, здається, парами ключових значень. Коли я намагаюся кинути це, [Hashtable]це не працює. Я також спробував, .toString()і призначена змінна каже, що це рядок, але нічого не відображає - будь-які ідеї?

4
Як написати сценарій PowerShell, який приймає введення конвеєра?
Я намагаюся написати сценарій PowerShell, який може отримати вхідний конвеєр (і, як очікується, це зробить), але намагаюся щось на зразок ForEach-Object { # do something } насправді не працює при використанні сценарію з командного рядка наступним чином: 1..20 | .\test.ps1 Чи є спосіб? Примітка: Я знаю про функції та фільтри. …
75 powershell 

4
Як передати необхідні параметри сценарію в Powershell ISE?
Див. Заголовок. Я вказав необхідні параметри в голові сценарію: param ($G_ARCHIVE = $(throw "Need file to upload!"), $G_LOGFILE = $(throw "Need logfile!")) Коли я хочу налагодити сценарій за допомогою Powershell ISE: як я можу заповнити ці параметри?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.