Add-History
Připojí položky do historie relace.
Syntax
Default (Výchozí)
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 čas zahájení 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 sezení najdete v about_History.
Historie relací se spravuje odděleně od historie spravované modulem PSReadLine. Obě historie jsou k dispozici v relacích, kde je načten modul PSReadLine. Tento cmdlet funguje jenom s historií relace. Další informace naleznete v about_PSReadLine.
Rutinu Get-History můžete použít k získání příkazů a jejich předání do Add-Historynebo můžete příkazy exportovat 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 c:\testing\history.csv -IncludeTypeInformation
Import-Csv 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 je zadán na příkazovém řádku jiné relace. K importu objektů v souboru Import-Csv používá rutinu History.csv. Operátor kanálu (|) předá objekty do rutiny Add-History, která přidá objekty představující příkazy v souboru History.csv do aktuální historie relací.
Příklad 2: Import a spuštění příkazů
Tento příklad importuje příkazy ze souboru History.xml, přidá je do aktuální historie relací a potom spustí příkazy v kombinované historii.
Import-Clixml 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 souboru History.xml. Operátor kanálu předá příkazy do rutiny Add-History, která přidá příkazy do aktuální historie relací. Parametr PassThru předá objekty představující přidané příkazy dále v kanálu.
Příkaz pak použije rutinu ForEach-Object k použití příkazu Invoke-History pro každý z příkazů v kombinované historii. Příkaz Invoke-History je formátovaný jako blok skriptu uzavřený ve složených závorkách ({}), 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
Cmdlet Get-History získá pět příkazů končících s příkazem číslo 5. Operátor kanálu je předá příkazu Add-History, který je přidá k aktuálnímu seznamu historie. Příkaz Add-History neobsahuje žádné parametry, ale PowerShell přidruží objekty předané potrubím k parametru InputObjectAdd-History.
Příklad 4: Přidání příkazů do souboru .csv do aktuální historie
Tento příklad přidá příkazy ze souboru History.csv do aktuální historie relace.
$a = Import-Csv c:\testing\history.csv
Add-History -InputObject $a -PassThru
Rutina Import-Csv importuje příkazy v souboru History.csv a uloží jeho obsah do proměnné $a.
Druhý příkaz používá rutinu Add-History k přidání příkazů z History.csv do aktuální historie relace. Pomocí parametru InputObject určuje proměnnou $a a parametr PassThru k vygenerování objektu, který se zobrazí na příkazovém řádku. Bez parametru PassThru nevygeneruje rutina Add-History žá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 souboru history.xml do historie aktuální relace.
Add-History -InputObject (Import-Clixml c:\temp\history.xml)
Parametr InputObject předá výsledky příkazu v závorkách do rutiny Add-History. Příkaz v závorkách, který se spustí jako první, naimportuje soubor history.xml do PowerShellu. Cmdlet Add-History pak přidá příkazy ze souboru do historie relace.
Parametry
-InputObject
Určuje pole položek, které se přidají do historie jako objekt HistoryInfo do historie relace.
Tento parametr můžete použít k odeslání objektu HistoryInfo, například objektů vrácených rutinami Get-History, Import-Clixmlnebo Import-Csv, do Add-History.
Vlastnosti parametru
| Typ: | PSObject[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | 0 |
| Povinné: | False |
| Hodnota z kanálu: | True |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Passthru
Označuje, že tato rutina vrátí objekt HistoryInfo pro každou položku historie. Ve výchozím nastavení tato rutina negeneruje žádný výstup.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
HistoryInfo
Do této cmdletu můžete předat objekt HistoryInfo.
Výstupy
None or Microsoft.PowerShell.Commands.HistoryInfo
Tato rutina vrátí objekt HistoryInfo, pokud zadáte parametr PassThru. Jinak tento příkaz negeneruje žádný výstup.
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 čas zahájení 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 sezení najdete v about_History.
Chcete-li zadat příkazy, které chcete přidat do historie, použijte parametr InputObject. Příkaz Add-History přijímá pouze HistoryInfo objekty, jako jsou 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ů.
Pomocí parametru InputObject můžete předat soubor objektů HistoryInfo do Add-History. K tomu exportujte výsledky příkazu Get-History do souboru pomocí rutiny Export-Csv nebo Export-Clixml a pak soubor naimportujte pomocí rutin Import-Csv nebo Import-Clixml. Pak můžete předat soubor importovaných objektů HistoryInfo přes kanál nebo do proměnné Add-History. Další informace najdete v příkladech.
Soubor objektů HistoryInfo, které předáte rutině Add-History, musí obsahovat informace o typech, záhlaví sloupců a všechny vlastnosti objektů HistoryInfo. Pokud chcete předat objekty zpět do Add-History, nepoužívejte parametr NoTypeInformation rutiny Export-Csv a neodstraňujte informace o typu, záhlaví sloupců ani žádná pole v souboru.
Pokud chcete upravit historii relací, exportujte relaci do souboru CSV nebo XML, upravte soubor, importujte soubor a pomocí Add-History ho připojte k aktuální historii relací.