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-Clixml
nebo 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
Do této rutiny můžete připojit objekt HistoryInfo .
Výstupy
None
Ve výchozím nastavení tato rutina nevrací žádný výstup.
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í.