Udostępnij za pomocą


Add-History

Dołącza wpisy do historii sesji.

Składnia

Default (domyślnie)

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

Opis

Polecenie cmdlet Add-History dodaje wpisy na końcu historii sesji, czyli listę poleceń wprowadzonych podczas bieżącej sesji. Możesz użyć polecenia cmdlet Get-History, aby pobrać polecenia i przekazać je do Add-Historylub wyeksportować polecenia do pliku CSV lub XML, a następnie zaimportować polecenia i przekazać zaimportowany plik do Add-History. To polecenie cmdlet umożliwia dodanie określonych poleceń do historii lub utworzenie pojedynczego pliku historii zawierającego polecenia z więcej niż jednej sesji.

Przykłady

Przykład 1. Dodawanie poleceń do historii innej sesji

# 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

Te polecenia dodają polecenia wpisane w jednej sesji programu Windows PowerShell do historii innej sesji programu Windows PowerShell. Drugie polecenie jest wpisywane w wierszu polecenia innej sesji.

Operator potoku | przekazuje obiekty do polecenia cmdlet Add-History, które dodaje obiekty reprezentujące polecenia w pliku History.csv do bieżącej historii sesji.

Przykład 2. Importowanie i uruchamianie poleceń

Import-Clixml c:\temp\history.xml | Add-History -Passthru | ForEach-Object -Process {Invoke-History}

To polecenie importuje polecenia z pliku History.xml, dodaje je do bieżącej historii sesji, a następnie uruchamia polecenia w połączonej historii.

Polecenie cmdlet Import-Clixml importuje historię poleceń wyeksportowaną do pliku History.xml.

Operator potoku przesyła polecenia do cmdletu Add-History, który dodaje je do bieżącej historii sesji.

Parametr PassThru przekazuje obiekty reprezentujące dodane polecenia dalej wzdłuż potoku.

Polecenie cmdlet ForEach-Object do zastosowania polecenia Invoke-History do każdego z poleceń w połączonej historii.

Polecenie Invoke-History jest sformatowane jako blok skryptu, ujęte w nawiasy klamrowe, zgodnie z wymaganiami parametru Process polecenia cmdlet ForEach-Object.

Przykład 3. Dodawanie poleceń w historii na końcu historii

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

To polecenie dodaje pięć pierwszych poleceń w historii na końcu listy historii. Używa on polecenia cmdlet Get-History, aby uzyskać pięć poleceń kończących się na poleceniu 5. Operator rurociągu przekazuje je do polecenia cmdlet Add-History, które dodaje je do obecnej historii.

Polecenie Add-History nie zawiera żadnych parametrów, ale program Windows PowerShell kojarzy obiekty przekazywane przez potok z parametrem InputObjectAdd-History.

Przykład 4. Dodawanie poleceń w pliku .csv do bieżącej historii

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

Te polecenia dodają polecenia w pliku History.csv do bieżącej historii sesji.

Pierwsze polecenie używa polecenia cmdlet Import-Csv do zaimportowania poleceń w pliku History.csv i przechowywania jego zawartości w zmiennej $a.

Drugie polecenie używa polecenia cmdlet Add-History, aby dodać polecenia z History.csv do bieżącej historii sesji.

Używa parametru InputObject, aby określić zmienną $a i parametr PassThru w celu wygenerowania obiektu do wyświetlenia w wierszu polecenia. Bez parametru PassThru polecenie cmdlet Add-History nie generuje żadnych danych wyjściowych.

Przykład 5. Dodawanie poleceń w pliku .xml do bieżącej historii

Add-History -InputObject (Import-Clixml c:\temp\history01.xml)

To polecenie dodaje polecenia w pliku History01.xml do bieżącej historii sesji. Używa parametru InputObject, aby przekazać wyniki polecenia w nawiasach do polecenia cmdlet Add-History.

Polecenie w nawiasach, które jest wykonywane najpierw, importuje plik History01.xml do programu Windows PowerShell. Polecenie cmdlet Add-History następnie dodaje polecenia w pliku do historii sesji.

Parametry

-InputObject

Określa tablicę wpisów, które mają zostać dodane do historii jako obiekt HistoryInfo do historii sesji. Tego parametru można użyć do przesłania obiektu HistoryInfo, takiego jak na przykład tych zwracanych przez polecenia cmdlet Get-History, Import-Clixmllub Import-Csv, do Add-History.

Właściwości parametru

Typ:

PSObject[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:0
Obowiązkowe:False
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Passthru

Wskazuje, że to polecenie cmdlet zwraca obiekt historii dla każdego wpisu historii. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

HistoryInfo

Do tego polecenia cmdlet można przekazać obiekt HistoryInfo.

Dane wyjściowe

None or Microsoft.PowerShell.Commands.HistoryInfo

To polecenie cmdlet zwraca obiekt HistoryInfo, jeśli określisz parametr PassThru. W przeciwnym razie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Uwagi

  • Historia sesji to lista poleceń wprowadzonych podczas sesji wraz z identyfikatorem. Historia sesji reprezentuje kolejność wykonywania, stan oraz czas rozpoczęcia i zakończenia polecenia. Po wprowadzeniu każdego polecenia program Windows PowerShell dodaje go do historii, aby można było go ponownie użyć. Aby uzyskać więcej informacji na temat historii sesji, zobacz about_History.

  • Aby określić polecenia do dodania do historii, użyj parametru InputObject. Polecenie Add-History akceptuje tylko obiekty HistoryInfo, takie jak te zwracane dla każdego polecenia przez polecenie cmdlet Get-History. Nie można przekazać ścieżki i nazwy pliku ani listy poleceń.

  • Możesz użyć parametru InputObject, aby przekazać plik obiektów HistoryInfo do Add-History. W tym celu wyeksportuj wyniki polecenia Get-History do pliku przy użyciu polecenia cmdlet Export-Csv lub Export-Clixml, a następnie zaimportuj plik przy użyciu poleceń cmdlet Import-Csv lub Import-Clixml. Następnie można przekazać plik zaimportowanych obiektów HistoryInfo do Add-History przez potok lub zmienną. Aby uzyskać więcej informacji, zobacz przykłady.

  • Plik obiektów HistoryInfo, które przekazujesz do polecenia cmdlet Add-History, musi zawierać informacje o typie, nagłówki kolumn oraz wszystkie właściwości obiektów HistoryInfo. Jeśli zamierzasz przekazać obiekty z powrotem do Add-History, nie używaj parametru NoTypeInformation polecenia cmdlet Export-Csv i nie usuwaj informacji o typie, nagłówków kolumn ani żadnych pól w pliku. Aby zmodyfikować historię sesji, wyeksportuj sesję do pliku CSV lub XML, zmodyfikuj plik, zaimportuj plik i użyj Add-History, aby dołączyć ją do bieżącej historii sesji.