Add-History
Voegt vermeldingen toe aan de sessiegeschiedenis.
Syntaxis
Add-History
[[-InputObject] <PSObject[]>]
[-Passthru]
[<CommonParameters>]
Description
De Add-History
cmdlet voegt vermeldingen toe aan het einde van de sessiegeschiedenis, dat wil gezegd, de lijst met opdrachten die tijdens de huidige sessie zijn ingevoerd.
U kunt de Get-History
cmdlet gebruiken om de opdrachten op te halen en door te geven aan Add-History
, of u kunt de opdrachten exporteren naar een CSV- of XML-bestand, de opdrachten importeren en het geïmporteerde bestand doorgeven aan Add-History
.
U kunt deze cmdlet gebruiken om specifieke opdrachten toe te voegen aan de geschiedenis of om één geschiedenisbestand te maken dat opdrachten uit meer dan één sessie bevat.
Voorbeelden
Voorbeeld 1: Opdrachten toevoegen aan de geschiedenis van een andere sessie
# Get objects representing the commands in the history and exports them to the History.csv file.
Get-History | Export-Csv c:\testing\history.csv
# Use the `Import-Csv` cmdlet to import the objects in the History.csv file.
Import-Csv history.csv | Add-History
Met deze opdrachten worden de opdrachten die in één Windows PowerShell-sessie zijn getypt, toegevoegd aan de geschiedenis van een andere Windows PowerShell-sessie. De tweede opdracht wordt getypt op de opdrachtregel van een andere sessie.
De pijplijnoperator |
de objecten doorgeeft aan de Add-History
-cmdlet, waarmee de objecten die de opdrachten in het History.csv-bestand vertegenwoordigen, worden toegevoegd aan de huidige sessiegeschiedenis.
Voorbeeld 2: Opdrachten importeren en uitvoeren
Import-Clixml c:\temp\history.xml | Add-History -Passthru | ForEach-Object -Process {Invoke-History}
Met deze opdracht importeert u opdrachten uit het History.xml-bestand, voegt u deze toe aan de huidige sessiegeschiedenis en voert u vervolgens de opdrachten uit in de gecombineerde geschiedenis.
De Import-Clixml
cmdlet importeert een opdrachtgeschiedenis die is geëxporteerd naar het History.xml bestand.
De pijplijnoperator geeft de opdrachten door aan de Add-History
cmdlet, waarmee de opdrachten worden toegevoegd aan de huidige sessiegeschiedenis.
De parameter PassThru geeft de objecten door die de toegevoegde opdrachten in de pijplijn vertegenwoordigen.
De ForEach-Object
-cmdlet voor het toepassen van de Invoke-History
opdracht op elk van de opdrachten in de gecombineerde geschiedenis.
De opdracht Invoke-History
is opgemaakt als een scriptblok, tussen accolades, zoals vereist door de parameter Process van de cmdlet ForEach-Object
.
Voorbeeld 3: Opdrachten toevoegen in de geschiedenis aan het einde van de geschiedenis
Get-History -Id 5 -Count 5 | Add-History
Met deze opdracht worden de eerste vijf opdrachten in de geschiedenis toegevoegd aan het einde van de geschiedenislijst.
Hierbij wordt de Get-History
cmdlet gebruikt om de vijf opdrachten op te halen die eindigen op opdracht 5.
De pijplijnoperator geeft deze door aan de Add-History
cmdlet, die deze toevoegt aan de huidige geschiedenis.
De opdracht
Voorbeeld 4: Opdrachten toevoegen in een .csv-bestand aan de huidige geschiedenis
$a = Import-Csv c:\testing\history.csv
Add-History -InputObject $a -PassThru
Met deze opdrachten worden de opdrachten in het History.csv bestand toegevoegd aan de huidige sessiegeschiedenis.
De eerste opdracht gebruikt de Import-Csv
cmdlet om de opdrachten in het History.csv bestand te importeren en de inhoud ervan op te slaan in de variabele $a
.
De tweede opdracht maakt gebruik van de Add-History
cmdlet om de opdrachten uit History.csv toe te voegen aan de huidige sessiegeschiedenis.
Hierbij wordt de parameter InputObject gebruikt om de variabele $a en de parameter PassThru op te geven om een object te genereren dat op de opdrachtregel moet worden weergegeven.
Zonder de parameter PassThru genereert de Add-History
-cmdlet geen uitvoer.
Voorbeeld 5: Opdrachten toevoegen in een .xml-bestand aan de huidige geschiedenis
Add-History -InputObject (Import-Clixml c:\temp\history01.xml)
Met deze opdracht worden de opdrachten in het History01.xml-bestand toegevoegd aan de huidige sessiegeschiedenis.
De parameter InputObject wordt gebruikt om de resultaten van de opdracht tussen haakjes door te geven aan de Add-History
-cmdlet.
Met de opdracht tussen haakjes, die eerst wordt uitgevoerd, wordt het History01.xml-bestand geïmporteerd in Windows PowerShell. De cmdlet Add-History
voegt vervolgens de opdrachten in het bestand toe aan de sessiegeschiedenis.
Parameters
-InputObject
Hiermee geeft u een matrix van vermeldingen toe te voegen aan de geschiedenis als HistoryInfo-object aan de sessiegeschiedenis.
U kunt deze parameter gebruiken om een HistoryInfo--object te verzenden, zoals het object dat wordt geretourneerd door de Get-History
, Import-Clixml
of Import-Csv
cmdlets, naar Add-History
.
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Passthru
Geeft aan dat deze cmdlet een geschiedenisobject retourneert voor elke geschiedenisvermelding. Deze cmdlet genereert standaard geen uitvoer.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt een HistoryInfo--object doorsluisen naar deze cmdlet.
Uitvoerwaarden
None or Microsoft.PowerShell.Commands.HistoryInfo
Met deze cmdlet wordt een HistoryInfo--object geretourneerd als u de parameter PassThru opgeeft. Anders genereert deze cmdlet geen uitvoer.
Notities
De sessiegeschiedenis is een lijst met de opdrachten die tijdens de sessie zijn ingevoerd, samen met de id. De sessiegeschiedenis vertegenwoordigt de volgorde van uitvoering, de status en de begin- en eindtijd van de opdracht. Wanneer u elke opdracht invoert, voegt Windows PowerShell deze toe aan de geschiedenis, zodat u deze opnieuw kunt gebruiken. Zie about_Historyvoor meer informatie over de sessiegeschiedenis.
Als u de opdrachten wilt opgeven die u aan de geschiedenis wilt toevoegen, gebruikt u de parameter InputObject. De opdracht
Add-History
accepteert alleen HistoryInfo objecten, zoals objecten die worden geretourneerd voor elke opdracht door deGet-History
-cmdlet. U kunt het pad en de bestandsnaam of een lijst met opdrachten niet doorgeven.U kunt de parameter InputObject gebruiken om een bestand van HistoryInfo objecten door te geven aan
Add-History
. Hiervoor exporteert u de resultaten van eenGet-History
opdracht naar een bestand met behulp van de cmdletExport-Csv
ofExport-Clixml
en importeert u het bestand vervolgens met behulp van de cmdletsImport-Csv
ofImport-Clixml
. Vervolgens kunt u het bestand van geïmporteerde HistoryInfo objecten doorgeven aanAdd-History
via een pijplijn of in een variabele. Zie de voorbeelden voor meer informatie.Het bestand van HistoryInfo objecten die u aan de
Add-History
cmdlet doorgeeft, moet de typegegevens, kolomkoppen en alle eigenschappen van de HistoryInfo-objecten bevatten. Als u de objecten weer wilt doorgeven aanAdd-History
, gebruikt u de parameter NoTypeInformation- van deExport-Csv
-cmdlet niet en verwijdert u de typegegevens, kolomkoppen of velden in het bestand niet. Als u de sessiegeschiedenis wilt wijzigen, exporteert u de sessie naar een CSV- of XML-bestand, wijzigt u het bestand, importeert u het bestand en gebruikt uAdd-History
om deze toe te voegen aan de huidige sessiegeschiedenis.