Bagikan melalui


Invoke-History

Menjalankan perintah dari riwayat sesi.

Sintaks

Invoke-History
      [[-Id] <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Deskripsi

cmdlet Invoke-History menjalankan perintah dari riwayat sesi. Anda dapat meneruskan objek yang mewakili perintah dari Get-History ke Invoke-History, atau Anda dapat mengidentifikasi perintah dalam riwayat saat ini dengan menggunakan nomor Id mereka. Untuk menemukan nomor identifikasi perintah, gunakan cmdlet Get-History.

Riwayat sesi dikelola secara terpisah dari riwayat yang dikelola oleh modul PSReadLine. Kedua riwayat tersedia dalam sesi di mana PSReadLine dimuat. Cmdlet ini hanya berfungsi dengan riwayat sesi. Untuk informasi selengkapnya, lihat about_PSReadLine.

Contoh

Contoh 1: Jalankan perintah terbaru dalam riwayat

Contoh ini menjalankan perintah terakhir, atau terbaru, dalam riwayat sesi. Anda dapat menyingkat perintah ini sebagai r, alias untuk Invoke-History.

Invoke-History

Contoh 2: Jalankan perintah yang memiliki ID tertentu

Contoh ini menjalankan perintah dalam riwayat sesi dengan Id 132. Karena nama parameter Id bersifat opsional, Anda dapat menyingkat perintah ini sebagai berikut: Invoke-History 132, ihy 132, atau r 132.

Invoke-History -Id 132

Contoh 3: Jalankan perintah terbaru dengan menggunakan teks perintah

Contoh ini menjalankan perintah Get-Process terbaru dalam riwayat sesi. Saat Anda mengetik karakter untuk parameter Id, Invoke-History menjalankan perintah pertama yang ditemukan yang cocok dengan pola, dimulai dengan perintah terbaru.

Invoke-History -Id get-pr

Nota

Pencocokan pola bersifat tidak peka huruf besar/kecil, tetapi polanya cocok dengan bagian awal baris.

Contoh 4: Jalankan urutan perintah dari riwayat

Contoh ini menjalankan perintah 16 hingga 24. Karena Anda hanya dapat mencantumkan satu nilai Id, perintah menggunakan cmdlet ForEach-Object untuk menjalankan perintah Invoke-History satu kali untuk setiap nilai Id.

16..24 | ForEach-Object {Invoke-History -Id $_ }

Contoh 5

Contoh ini menjalankan tujuh perintah dalam riwayat yang berakhiran dengan perintah 255 (249 hingga 255). Ini menggunakan cmdlet Get-History untuk mengambil perintah. Karena Anda hanya dapat mencantumkan satu nilai Id, perintah menggunakan cmdlet ForEach-Object untuk menjalankan perintah Invoke-History sekali untuk setiap nilai Id.

Get-History -Id 255 -Count 7 | ForEach-Object {Invoke-History -Id $_.Id}

Parameter

-Confirm

Meminta konfirmasi sebelum menjalankan cmdlet.

Jenis:SwitchParameter
Alias:cf
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Id

Menentukan Id dari perintah dalam riwayat. Anda dapat mengetik nomor id perintah atau beberapa karakter pertama dari perintah.

Jika Anda mengetikkan karakter, Invoke-History akan lebih dulu mencocokkan dengan perintah terbaru. Jika Anda menghilangkan parameter ini, Invoke-History menjalankan perintah terakhir, atau terbaru. Untuk menemukan nomor ID sebuah perintah, gunakan cmdlet Get-History.

Jenis:String
Position:0
Nilai default:None
Diperlukan:False
Terima input alur:True
Terima karakter wildcard:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet dijalankan. Cmdlet tidak dijalankan.

Jenis:SwitchParameter
Alias:wi
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

Input

String

Anda dapat menyalurkan riwayat Id ke cmdlet ini.

Output

None

Cmdlet ini tidak mengembalikan outputnya sendiri, tetapi perintah yang dijalankannya dapat mengembalikan output mereka sendiri.

Catatan

PowerShell menyertakan alias berikut untuk Invoke-History:

  • Semua platform:
    • ihy
    • r

Riwayat sesi adalah daftar perintah yang dimasukkan selama sesi. Riwayat sesi mewakili urutan eksekusi, status, dan waktu mulai dan berakhir perintah. Saat Anda memasukkan setiap perintah, PowerShell menambahkannya ke riwayat sehingga Anda dapat menggunakannya kembali. Untuk informasi selengkapnya tentang riwayat sesi, lihat about_History.