Udostępnij za pomocą


Obiekt PowerShellTab

Obiekt PowerShellTab reprezentuje środowisko uruchomieniowe Windows PowerShell.

Methods

Invoke( Script )

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Uruchamia dany skrypt w zakładce PowerShell.

Uwaga / Notatka

Ta metoda działa tylko na innych zakładkach PowerShell, a nie na zakładce PowerShell, z której jest uruchamiana. Nie zwraca żadnego obiektu ani wartości. Jeśli kod modyfikuje jakąkolwiek zmienną, te zmiany pozostają na zakładce, na której polecenie zostało wywołane.

  • Skrypt - System.Management.Automation.ScriptBlock lub String - Blok skryptu do uruchomienia.
# Manually create a second PowerShell tab before running this script.
# Return to the first PowerShell tab and type the following command
$psISE.PowerShellTabs[1].Invoke({dir})

InvokeSynchronous( Script, [useNewScope], millisecondsTimeout )

Obsługiwany w Windows PowerShell ISE 3.0 i nowszych, a nie występował w wcześniejszych wersjach.

Uruchamia dany skrypt w zakładce PowerShell.

Uwaga / Notatka

Ta metoda działa tylko na innych zakładkach PowerShell, a nie na zakładce PowerShell, z której jest uruchamiana. Blok skryptu jest uruchamiany, a każda wartość zwrócona ze skryptu jest zwracana do środowiska uruchomienia, z którego wywołałeś polecenie. Jeśli polecenie trwa dłużej niż określa wartość Timeout w ciągu milisekund, to polecenie nie udaje się z wyjątkiem: "Operacja wygasła."

  • Skrypt - System.Management.Automation.ScriptBlock lub String - Blok skryptu do uruchomienia.
  • [useNewScope] - Opcjonalny boolean, który domyślnie przyjmuje - $true Jeśli ustawione na $true, tworzy się nowy zakres, w którym można wykonać polecenie. Nie modyfikuje środowiska uruchomieniowego zakładki PowerShell, która jest określona przez polecenie.
  • [milisekundyTimeout] - Opcjonalna liczba całkowita domyślnie ustawiona na 500. - Jeśli polecenie nie zostanie zakończone w określonym czasie, generuje TimeoutException z komunikatem "Operacja zakończyła czas."
# Create a new PowerShell tab and then switch back to the first
$psISE.PowerShellTabs.Add()
$psISE.PowerShellTabs.SetSelectedPowerShellTab($psISE.PowerShellTabs[0])

# Invoke a simple command on the other tab, in its own scope
$psISE.PowerShellTabs[1].InvokeSynchronous('$x=1', $false)
# You can switch to the other tab and type '$x' to see that the value is saved there.

# This example sets a value in the other tab (in a different scope)
# and returns it through the pipeline to this tab to store in $a
$a = $psISE.PowerShellTabs[1].InvokeSynchronous('$z=3;$z')
$a

# This example runs a command that takes longer than the allowed timeout value
# and measures how long it runs so that you can see the impact
Measure-Command {$psISE.PowerShellTabs[1].InvokeSynchronous('sleep 10', $false, 5000)}

Właściwości

AddOnsMenu

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość tylko do odczytu, która otwiera menu Add-ons do zakładki PowerShell.

# Clear the Add-ons menu if one exists.
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
# Create an AddOns menu with an accessor.
# Note the use of "_"  as opposed to the "&" for mapping to the fast key letter for the menu item.
$menuAdded = $psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add('_Process',
    {Get-Process}, 'Alt+P')
# Add a nested menu.
$parentAdded = $psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add('Parent', $null, $null)
$parentAdded.SubMenus.Add('_Dir', {dir}, 'Alt+D')
# Show the Add-ons menu on the current PowerShell tab.
$psISE.CurrentPowerShellTab.AddOnsMenu

CanInvoke

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość boolowska tylko do odczytu, która zwraca wartość$true, jeśli skrypt można wywołać metodą Invoke( Script ).

# CanInvoke will be false if the PowerShell
# tab is running a script that takes a while, and you
# check its properties from another PowerShell tab. It's
# always false if checked on the current PowerShell tab.
# Manually create a second PowerShell tab before running this script.
# Return to the first tab and type
$secondTab = $psISE.PowerShellTabs[1]
$secondTab.CanInvoke
$secondTab.Invoke({sleep 20})
$secondTab.CanInvoke

ConsolePane

Obsługiwany w Windows PowerShell ISE 3.0 i nowszych, a nie występował w wcześniejszych wersjach. W Windows PowerShell ISE 2.0 nazywano to CommandPane.

Właściwość tylko do odczytu, która otrzymuje obiekt edytora panelu konsoli.

# Gets the Console Pane editor.
$psISE.CurrentPowerShellTab.ConsolePane

Nazwa wyświetlana

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość read-write, która pobiera lub ustawia tekst wyświetlany na zakładce PowerShell. Domyślnie zakładki nazywane są "PowerShell #", gdzie # oznacza liczbę.

$newTab = $psISE.PowerShellTabs.Add()
# Change the DisplayName of the new PowerShell tab.
$newTab.DisplayName = 'Brand New Tab'

ExpandedScript

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość boolowską odczytu-zapisu, która decyduje, czy panel Script jest rozszerzany, czy ukryty.

# Toggle the expanded script property to see its effect.
$psISE.CurrentPowerShellTab.ExpandedScript = !$psISE.CurrentPowerShellTab.ExpandedScript

Files

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość tylko do odczytu, która generuje kolekcję plików skryptów otwartych w zakładce PowerShell.

$newFile = $psISE.CurrentPowerShellTab.Files.Add()
$newFile.Editor.Text = "a`r`nb"
# Gets the line count
$newFile.Editor.LineCount

Wynik

Ta funkcja jest obecna w Windows PowerShell ISE 2.0, ale została usunięta lub przemianowana w późniejszych wersjach ISE. W późniejszych wersjach Windows PowerShell ISE można używać obiektu ConsolePane do tych samych celów.

Właściwość tylko do odczytu, która otrzymuje panel Output aktualnego edytora.

# Clears the text in the Output pane.
$psISE.CurrentPowerShellTab.Output.Clear()

Podpowiedź

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość tylko do odczytu, która otrzymuje aktualny tekst promptu. Uwaga: funkcję prompt tę można nadpisać przez profil użytkownika. Jeśli wynik jest inny niż prosty ciąg, to ta własność nie zwraca nic.

# Gets the current prompt text.
$psISE.CurrentPowerShellTab.Prompt

Polecenia ShowCommands

Obsługiwany w Windows PowerShell ISE 3.0 i nowszych, a nie występował w wcześniejszych wersjach.

Właściwość odczytu i zapisu, która wskazuje, czy panel Poleceń jest aktualnie wyświetlany.

# Gets the current status of the Commands pane and stores it in the $a variable
$a = $psISE.CurrentPowerShellTab.ShowCommands
# if $a is $false, then turn the Commands pane on by changing the value to $true
if (!$a) {$psISE.CurrentPowerShellTab.ShowCommands = $true}

StatusText

Obsługiwane w Windows PowerShell ISE 2.0 i nowszych.

Właściwość tylko do odczytu, która otrzymuje tekst statusu PowerShellTab .

# Gets the current status text,
$psISE.CurrentPowerShellTab.StatusText

HorizontalneDodajNarzędziaPaneOtwarte

Obsługiwany w Windows PowerShell ISE 3.0 i nowszych, a nie występował w wcześniejszych wersjach.

Właściwość tylko do odczytu, która wskazuje, czy pozioma Add-Ons szyba narzędziowa jest obecnie otwarta.

# Gets the current state of the horizontal Add-ons tool pane.
$psISE.CurrentPowerShellTab.HorizontalAddOnToolsPaneOpened

VerticalAddOnToolsPaneOtwarte

Obsługiwany w Windows PowerShell ISE 3.0 i nowszych, a nie występował w wcześniejszych wersjach.

Właściwość tylko do odczytu, która wskazuje, czy pionowa Add-Ons panela narzędzi jest obecnie otwarta.

# Turns on the Commands pane
$psISE.CurrentPowerShellTab.ShowCommands = $true
# Gets the current state of the vertical Add-ons tool pane.
$psISE.CurrentPowerShellTab.HorizontalAddOnToolsPaneOpened

Zobacz też