Bagikan melalui


Remove-PSSession

Menutup satu atau beberapa sesi PowerShell (PSSessions).

Sintaks

Remove-PSSession
      [-Id] <Int32[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      [-Session] <PSSession[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      -ContainerId <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      -VMId <Guid[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      -VMName <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      -InstanceId <Guid[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      -Name <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-PSSession
      [-ComputerName] <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Deskripsi

Remove-PSSession Cmdlet menutup sesi PowerShell (PSSessions) dalam sesi saat ini. Ini menghentikan perintah apa pun yang berjalan di PSSessions, mengakhiri PSSession, dan merilis sumber daya yang digunakan PSSession . Jika PSSession tersambung ke komputer jarak jauh, cmdlet ini juga menutup koneksi antara komputer lokal dan jarak jauh.

Untuk menghapus PSSession, masukkan Nama, ComputerName, ID, atau InstanceID sesi.

Jika Anda telah menyimpan PSSession dalam variabel, objek sesi tetap berada dalam variabel, tetapi status PSSession Ditutup.

Contoh

Contoh 1: Menghapus sesi menurut ID

Remove-PSSession -Id 1, 2

Perintah ini menghapus PSSessions yang memiliki ID 1 dan 2.

Contoh 2: Hapus semua sesi dalam sesi saat ini

Get-PSSession | Remove-PSSession
Remove-PSSession -Session (Get-PSSession)
$s = Get-PSSession
Remove-PSSession -Session $s

Perintah ini menghapus semua PSSessions dalam sesi saat ini. Meskipun tiga format perintah terlihat berbeda, format tersebut memiliki efek yang sama.

Contoh 3: Tutup sesi menurut nama

$r = Get-PSSession -ComputerName Serv*
$r | Remove-PSSession

Perintah ini menutup PSSessions yang terhubung ke komputer yang memiliki nama yang dimulai dengan Serv.

Contoh 4: Tutup sesi yang tersambung ke port

Get-PSSession | where {$_.port -eq 90} | Remove-PSSession

Perintah ini menutup PSSessions yang tersambung ke port 90. Anda dapat menggunakan format perintah ini untuk mengidentifikasi PSSessions menurut properti selain ComputerName, Name, InstanceID, dan ID.

Contoh 5: Tutup sesi menurut ID instans

Get-PSSession | Format-Table ComputerName, InstanceID  -AutoSize

ComputerName InstanceId
------------ ----------------
Server01     875d231b-2788-4f36-9f67-2e50d63bb82a
localhost    c065ffa0-02c4-406e-84a3-dacb0d677868
Server02     4699cdbc-61d5-4e0d-b916-84f82ebede1f
Server03     4e5a3245-4c63-43e4-88d0-a7798bfc2414
TX-TEST-01   fc4e9dfa-f246-452d-9fa3-1adbdd64ae85

Remove-PSSession -InstanceID fc4e9dfa-f246-452d-9fa3-1adbdd64ae85

Perintah ini menunjukkan cara menutup PSSession berdasarkan ID instansnya, atau RemoteRunspaceID.

Perintah pertama menggunakan Get-PSSession cmdlet untuk mendapatkan PSSessions dalam sesi saat ini. Ini menggunakan operator alur (|) untuk mengirim PSSessions ke Format-Table cmdlet, yang memformat properti ComputerName dan InstanceID mereka dalam tabel. Parameter AutoSize memadatkan kolom untuk ditampilkan.

Dari tampilan yang dihasilkan, Anda dapat mengidentifikasi PSSession yang akan ditutup, dan menyalin dan menempelkan InstanceID PSSession tersebut ke perintah kedua.

Perintah kedua menggunakan Remove-PSSession cmdlet untuk menghapus PSSession dengan ID instans yang ditentukan.

Contoh 6: Membuat fungsi yang menghapus semua sesi dalam sesi saat ini

Function EndPSS { Get-PSSession | Remove-PSSession }

Fungsi ini menutup setiap PSSession dalam sesi saat ini. Setelah Anda menambahkan fungsi ini ke profil PowerShell Anda, untuk menghapus semua sesi, ketik EndPSS.

Parameter

-ComputerName

Menentukan array nama komputer. Cmdlet ini menutup PSSessions yang tersambung ke komputer yang ditentukan. Karakter kartubebas diizinkan.

Ketik nama NetBIOS, alamat IP, atau nama domain yang sepenuhnya memenuhi syarat dari satu atau beberapa komputer jarak jauh. Untuk menentukan komputer lokal, ketik nama komputer, localhost, atau titik (.).

Jenis:String[]
Alias:Cn
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:True

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

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

-ContainerId

Menentukan array ID kontainer. Cmdlet ini menghapus sesi untuk setiap kontainer yang ditentukan. docker ps Gunakan perintah untuk mendapatkan daftar ID kontainer. Untuk informasi selengkapnya, lihat bantuan untuk perintah docker ps .

Jenis:String[]
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-Id

Menentukan array ID sesi. Cmdlet ini menutup PSSessions dengan ID yang ditentukan. Ketik satu atau beberapa ID, dipisahkan oleh koma, atau gunakan operator rentang (..) untuk menentukan rentang ID.

ID adalah bilangan bulat yang secara unik mengidentifikasi PSSession dalam sesi saat ini. Lebih mudah diingat dan ditik daripada InstanceId, tetapi hanya unik dalam sesi saat ini. Untuk menemukan ID PSSession, jalankan Get-PSSession cmdlet tanpa parameter.

Jenis:Int32[]
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-InstanceId

Menentukan array ID instans. Cmdlet ini menutup PSSessions yang memiliki ID instans yang ditentukan.

ID instans adalah GUID yang secara unik mengidentifikasi PSSession dalam sesi saat ini. ID instans unik, bahkan ketika Anda memiliki beberapa sesi yang berjalan di satu komputer.

ID instans disimpan di properti InstanceID objek yang mewakili PSSession. Untuk menemukan InstanceID dari PSSessions dalam sesi saat ini, ketik Get-PSSession | Format-Table Name, ComputerName, InstanceId.

Jenis:Guid[]
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-Name

Menentukan array nama sesi yang mudah diingat. Cmdlet ini menutup PSSessions yang memiliki nama ramah yang ditentukan. Karakter kartubebas diizinkan.

Karena nama PSSession yang mudah diingat mungkin tidak unik, saat Anda menggunakan parameter Nama, pertimbangkan juga menggunakan parameter WhatIf atau Konfirmasi dalam Remove-PSSession perintah.

Jenis:String[]
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:True

-Session

Menentukan objek sesi PSSessions untuk ditutup. Masukkan variabel yang berisi PSSessions atau perintah yang membuat atau mendapatkan PSSessions, seperti New-PSSession perintah atau Get-PSSession . Anda juga dapat menyalurkan satu atau beberapa objek sesi ke Remove-PSSession.

Jenis:PSSession[]
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-VMId

Menentukan array ID komputer virtual. Cmdlet ini memulai sesi interaktif dengan masing-masing komputer virtual yang ditentukan. Untuk melihat komputer virtual yang tersedia untuk Anda, gunakan perintah berikut:

Get-VM | Select-Object -Property Name, ID

Jenis:Guid[]
Alias:VMGuid
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-VMName

Menentukan array nama komputer virtual. Cmdlet ini memulai sesi interaktif dengan masing-masing komputer virtual yang ditentukan. Untuk melihat komputer virtual yang tersedia untuk Anda, gunakan Get-VM cmdlet .

Jenis:String[]
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-WhatIf

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

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

Input

PSSession

Anda dapat menyalurkan objek sesi ke cmdlet ini.

Output

None

Cmdlet ini tidak mengembalikan output.

Catatan

PowerShell menyertakan alias berikut untuk Remove-PSSession:

  • Semua platform:

    • rsn
  • Parameter Id bersifat wajib. Untuk menghapus semua PSSessions dalam sesi saat ini, ketik Get-PSSession | Remove-PSSession.

  • PSSession menggunakan koneksi persisten ke komputer jarak jauh. Buat PSSession untuk menjalankan serangkaian perintah yang berbagi data. Untuk informasi selengkapnya, ketik Get-Help about_PSSessions.

  • PSSessions khusus untuk sesi saat ini. Saat Anda mengakhiri sesi, PSSessions yang Anda buat dalam sesi tersebut ditutup secara paksa.