Sdílet prostřednictvím


Add-History

Připojí položky do historie relace.

Syntax

Add-History
   [[-InputObject] <PSObject[]>]
   [-Passthru]
   [<CommonParameters>]

Description

Rutina Add-History přidá položky na konec historie relace, tj. seznam příkazů zadaných během aktuální relace.

Historie relací je seznam příkazů zadaných během relace. Historie relace představuje pořadí spuštění, stav a časy spuštění a ukončení příkazu. Při zadávání každého příkazu ho PowerShell přidá do historie, abyste ho mohli znovu použít. Další informace o historii relací najdete v tématu about_History.

Historie relací se spravuje odděleně od historie spravované modulem PSReadLine . Obě historie jsou k dispozici v relacích, ve kterých je načtena funkce PSReadLine . Tato rutina funguje jenom s historií relace. Další informace najdete v about_PSReadLine.

Pomocí rutiny Get-History můžete získat příkazy a předat je Add-History, nebo můžete exportovat příkazy do souboru CSV nebo XML, pak importovat příkazy a předat importovaný soubor .Add-History Pomocí této rutiny můžete do historie přidat konkrétní příkazy nebo vytvořit jeden soubor historie, který obsahuje příkazy z více než jedné relace.

Příklady

Příklad 1: Přidání příkazů do historie jiné relace

Tento příklad přidá příkazy zadané v jedné relaci PowerShellu do historie jiné relace PowerShellu.

Get-History | Export-Csv -Path C:\testing\history.csv -IncludeTypeInformation
Import-Csv -Path C:\testing\history.csv | Add-History

První příkaz získá objekty představující příkazy v historii a exportuje je do History.csv souboru.

Druhý příkaz se zadává na příkazovém řádku jiné relace. Pomocí rutiny Import-Csv importuje objekty v History.csv souboru. Operátor kanálu (|) předá objekty rutině Add-History , která přidá objekty představující příkazy v History.csv souboru do aktuální historie relace.

Příklad 2: Import a spuštění příkazů

Tento příklad naimportuje příkazy ze History.xml souboru, přidá je do aktuální historie relace a potom spustí příkazy v kombinované historii.

Import-Clixml -Path C:\temp\history.xml | Add-History -PassThru | ForEach-Object -Process {Invoke-History}

První příkaz používá rutinu Import-Clixml k importu historie příkazů, která byla exportována do History.xml souboru. Operátor kanálu předá příkazy rutině Add-History , která přidá příkazy do aktuální historie relací. Parametr PassThru předá objekty představující přidané příkazy v kanálu.

Příkaz pak pomocí ForEach-Object rutiny Invoke-History použije příkaz na každý z příkazů v kombinované historii. Příkaz Invoke-History je formátovaný jako blok skriptu uzavřený do složených závorek ({}), jak to vyžaduje parametr Process rutiny ForEach-Object .

Příklad 3: Přidání příkazů v historii na konec historie

Tento příklad přidá prvních pět příkazů v historii na konec seznamu historie.

Get-History -Id 5 -Count 5 | Add-History

Rutina Get-History získá pět příkazů končících příkazem 5. Operátor kanálu je předá rutině Add-History , která je připojí k aktuální historii. Příkaz Add-History neobsahuje žádné parametry, ale PowerShell přidruží objekty předané kanálem k parametru InputObject parametru Add-History.

Příklad 4: Přidání příkazů do souboru .csv do aktuální historie

Tento příklad přidá příkazy v History.csv souboru do aktuální historie relace.

$a = Import-Csv -Path C:\testing\history.csv
Add-History -InputObject $a -PassThru

Rutina Import-Csv importuje příkazy v History.csv souboru a uloží jeho obsah do proměnné $a.

Druhý příkaz pomocí Add-History rutiny přidá příkazy z History.csv do aktuální historie relace. Používá InputObject parametr k určení $a proměnné a PassThru parametr generovat objekt, který se zobrazí na příkazovém řádku. Bez parametru Add-History PassThru rutina negeneruje žádný výstup.

Příklad 5: Přidání příkazů do souboru .xml do aktuální historie

Tento příklad přidá příkazy v history.xml souboru do aktuální historie relace.

Add-History -InputObject (Import-Clixml -Path C:\temp\history.xml)

Parametr InputObject předá výsledky příkazu v závorkách rutině Add-History . Příkaz v závorkách, který se spustí jako první, naimportuje soubor do PowerShellu history.xml . Rutina Add-History pak přidá příkazy v souboru do historie relace.

Parametry

-InputObject

Určuje pole položek, které chcete přidat do historie jako HistoryInfo objekt do historie relace. Tento parametr můžete použít k odeslání objektu HistoryInfo , jako jsou například objekty, které vrací Get-History, Import-Clixmlnebo Import-Csv rutiny, do Add-History.

Type:PSObject[]
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Passthru

Označuje, že tato rutina vrací objekt HistoryInfo pro každou položku historie. Ve výchozím nastavení tato rutina negeneruje žádný výstup.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

HistoryInfo

Do této rutiny můžete připojit objekt HistoryInfo .

Výstupy

None

Ve výchozím nastavení tato rutina nevrací žádný výstup.

HistoryInfo

Pokud použijete parametr PassThru , vrátí tato rutina objekt HistoryInfo .

Poznámky

Historie relace je seznam příkazů zadaných během relace společně s ID. Historie relace představuje pořadí spuštění, stav a časy spuštění a ukončení příkazu. Při zadávání každého příkazu ho PowerShell přidá do historie, abyste ho mohli znovu použít. Další informace o historii relací najdete v tématu about_History.

Pokud chcete zadat příkazy, které chcete přidat do historie, použijte parametr InputObject . Příkaz Add-History přijímá pouze objekty HistoryInfo , například objekty vrácené pro každý příkaz rutinou Get-History . Nelze jí předat cestu a název souboru ani seznam příkazů.

Můžete použít InputObject parametr předat soubor HistoryInfo objektů do Add-History. Uděláte to tak, že výsledky příkazu vyexportujete Get-History do souboru pomocí Export-Csv rutiny nebo Export-Clixml rutiny a pak soubor naimportujete pomocí rutinImport-Csv.Import-Clixml Soubor importovaných objektů Add-History HistoryInfo pak můžete předat prostřednictvím kanálu nebo proměnné. Další informace najdete v příkladech.

Soubor HistoryInfo objektů, které předáte rutině Add-History , musí obsahovat informace o typu, záhlaví sloupců a všechny vlastnosti HistoryInfo objekty. Pokud chcete předat objekty zpět Add-History, nepoužívejte NoTypeInformation parametr Export-Csv rutiny a neodstraňovat informace o typu, záhlaví sloupců ani žádná pole v souboru.

Pokud chcete upravit historii relace, exportujte relaci do souboru CSV nebo XML, upravte soubor, importujte soubor a použijte Add-History ho k jeho připojení k aktuální historii relací.