SHELL (cmd vs powershell)
Berikut perbandingan mendalam antara Command Prompt (CMD) dan PowerShell di Windows, termasuk kelebihan, kekurangan, dan penggunaan ideal masing-masing:
1. Perbedaan Dasar
| Aspek | CMD (Command Prompt) | PowerShell |
|---|---|---|
| Tahun Rilis | 1981 (MS-DOS Legacy) | 2006 (Dirilis oleh Microsoft) |
| Bahasa Dasar | Batch Scripting (.bat) |
Object-Oriented Shell (.ps1) |
| Integrasi dengan OS | Hanya CLI tradisional | Terintegrasi dengan .NET dan WMI |
| Target Pengguna | Basic tasks, legacy systems | Administrasi sistem modern, otomatisasi |
2. Kelebihan dan Kekurangan
CMD (Command Prompt)
✅ Kelebihan:
- Ringan dan cepat untuk tugas sederhana.
- Kompatibel dengan script batch lama (.bat/.cmd).
- Sintaks sederhana untuk operasi dasar (file management, ping, dll).
❌ Kekurangan:
- Tidak mendukung pemrosesan objek (hanya teks).
- Fungsi terbatas untuk administrasi modern.
- Tidak bisa mengakses fitur sistem canggih (WMI, .NET).
Contoh Penggunaan CMD:
:: Menyalin file dan menampilkan pesan sederhana
copy file1.txt file2.txt
echo "File telah disalin!"
PowerShell
✅ Kelebihan:
- Pemrosesan Objek: Output berupa objek (bukan teks), memudahkan manipulasi data.
- Cmdlets Kaya: Ribuan command bawaan (misal: Get-Service, Test-NetConnection).
- Scripting Canggih: Dukungan loop, conditional logic, dan error handling.
- Akses Sistem Mendalam: Integrasi dengan WMI, .NET, dan API Windows.
❌ Kekurangan:
- Lebih berat dibanding CMD.
- Kurang kompatibel dengan script DOS lama.
- Learning curve lebih tinggi.
Contoh Penggunaan PowerShell:
# Mendapatkan daftar service yang berjalan, lalu ekspor ke CSV
Get-Service | Where-Object { $_.Status -eq "Running" } | Export-Csv -Path "services.csv"
3. Perbedaan Sintaks dan Kemampuan
a. Manipulasi File
- CMD:
cmd dir /s | find "report" - PowerShell:
powershell Get-ChildItem -Recurse | Select-String "report"Keunggulan PowerShell: Bisa filter berdasarkan properti (nama, ukuran, dll).
b. Network Troubleshooting
- CMD:
cmd ping google.com - PowerShell:
powershell Test-NetConnection google.com -InformationLevel DetailedKeunggulan PowerShell: Menampilkan port, latency, dan detail routing.
c. Variabel dan Objek
- CMD (Text-Based):
cmd set name=John echo %name% - PowerShell (Object-Based):
powershell $user = [PSCustomObject]@{ Name="John"; Age=30 } $user.Name # Mengakses properti objek
4. Tabel Perbandingan Fitur
| Fitur | CMD | PowerShell |
|---|---|---|
| Pemrosesan Output | Hanya teks | Objek (bisa di-filter, di-sort, dll.) |
| Remote Management | Tidak ada | Dukungan penuh (WinRM, SSH) |
| Error Handling | Terbatas (%errorlevel%) |
Try/Catch/Finally |
| Modularitas | Tidak ada | Modules (misal: ActiveDirectory) |
| Kompatibilitas | Script DOS lama | Butuh adaptasi untuk script legacy |
5. Kapan Menggunakan CMD vs. PowerShell?
Gunakan CMD Jika:
- Menjalankan perintah sederhana (
ipconfig,ping). - Bekerja dengan script batch lama.
- Butuh eksekusi cepat tanpa overhead.
Gunakan PowerShell Jika:
- Membutuhkan administrasi sistem mendalam.
- Mengelola Active Directory, Azure, atau Windows Server.
- Menulis script otomatisasi kompleks.
6. Contoh Kasus Nyata
a. Mencari File dan Menghapusnya
- CMD:
cmd for /r %i in (*.tmp) do del "%i" - PowerShell:
powershell Get-ChildItem -Recurse -Filter *.tmp | Remove-ItemKeunggulan PowerShell: Lebih mudah dibaca dan dikembangkan.
b. Monitoring Disk Space
- CMD (Terbatas):
cmd dir /s /q - PowerShell (Detail):
powershell Get-Volume | Select-Object DriveLetter, SizeRemaining, Size
7. Dukungan dan Masa Depan
- CMD: Masih ada di Windows tapi tidak dikembangkan lagi.
- PowerShell: Direkomendasikan Microsoft untuk semua otomatisasi modern (bahkan dipakai di Azure Cloud Shell).
8. Kesimpulan
- CMD cocok untuk tugas cepat dan kompatibilitas legacy.
- PowerShell unggul untuk administrasi sistem, scripting, dan integrasi dengan teknologi modern.
- PowerShell Core (versi cross-platform) bahkan bisa dijalankan di Linux/macOS.
Jika Anda serius mengelola Windows, mulai beralih ke PowerShell adalah pilihan bijak! 🚀
Referensi:
- Microsoft PowerShell Docs
- CMD vs. PowerShell: The Ultimate Comparison
Perintah untuk Menampilkan Daftar PowerShell di Windows
Berikut adalah berbagai cara untuk menampilkan daftar perintah (cmdlets, functions, aliases) yang tersedia di PowerShell, baik bawaan maupun yang sudah terinstall:
1. Menampilkan Semua Cmdlet & Fungsi (Termasuk Bawaan)
Perintah Dasar: Get-Command
Get-Command
Output:
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Add-Computer 3.1.0.0 Microsoft.PowerShell.Management
Cmdlet Add-Content 3.1.0.0 Microsoft.PowerShell.Management
Function Clear-Host 7.0.0.0 Microsoft.PowerShell.Core
Alias cls -> Clear-Host 7.0.0.0 Microsoft.PowerShell.Core
Filter Berdasarkan Kategori
| Perintah | Keterangan |
|---|---|
Get-Command -CommandType Cmdlet |
Hanya tampilkan cmdlet (perintah inti PowerShell). |
Get-Command -CommandType Function |
Tampilkan fungsi custom/modul. |
Get-Command -CommandType Alias |
Tampilkan alias (misal: ls untuk Get-ChildItem). |
2. Mencari Perintah Spesifik
Cari Berdasarkan Nama
Get-Command *network* # Cari cmdlet mengandung kata "network"
Contoh Output:
Get-NetAdapter, Test-NetConnection, Set-NetIPAddress...
Cari di Modul Tertentu
Get-Command -Module Microsoft.PowerShell.Management
Hasil: Semua cmdlet dari modul Microsoft.PowerShell.Management (misal: Get-Service, Restart-Computer).
3. Menampilkan Daftar Modul yang Terinstall
Get-Module -ListAvailable
Output: Daftar modul PowerShell yang ada di sistem, termasuk versi dan path.
4. Menampilkan Detail Perintah (Syntax & Parameter)
Lihat Help suatu Cmdlet
Get-Help Get-Process -Full # Tampilkan detail lengkap
atau:
Get-Process -? # Cara cepat lihat sintaks
Contoh Output Help:
NAME
Get-Process
SYNTAX
Get-Process [[-Name] <string[]>] [-ComputerName <string[]>] [-Module] [-FileVersionInfo]...
5. Menampilkan Alias (Shortcut Perintah)
Get-Alias
Contoh Output:
CommandType Name
----------- ----
Alias ls -> Get-ChildItem
Alias cd -> Set-Location
Alias rm -> Remove-Item
6. Export Daftar Perintah ke File
Get-Command | Export-Csv -Path "C:\PS_Commands.csv" -NoTypeInformation
Hasil: File CSV berisi semua cmdlet, fungsi, dan alias.
7. Perintah Tambahan yang Berguna
| Perintah | Fungsi |
|---|---|
Get-Verb |
Tampilkan daftar verb standar PowerShell (e.g., Get, Set, New). |
Get-Command | Measure-Object |
Hitung total perintah yang tersedia. |
Update-Help |
Update dokumentasi help (harus run as admin). |
8. Contoh Praktis: Cari Perintah untuk Networking
Get-Command *net* | Where-Object { $_.CommandType -eq "Cmdlet" }
Hasil:
Get-NetAdapter, Set-NetIPAddress, Test-NetConnection...
9. Tips
- Gunakan wildcard (
*) untuk pencarian fleksibel (misal:Get-Command *service*). - Jika tidak menemukan perintah, mungkin modulnya belum di-import:
powershell Import-Module NetAdapter Get-Command -Module NetAdapter
10. Referensi
Dengan perintah di atas, Anda bisa eksplorasi semua kemampuan PowerShell yang tersedia! 🚀
Perintah untuk Menampilkan Daftar Command di CMD (Command Prompt)
Berikut cara melihat daftar perintah yang tersedia di CMD (Command Prompt) Windows:
1. Menampilkan Semua Perintah Internal CMD
Gunakan Perintah help
help
Output:
Untuk informasi lebih lanjut tentang perintah tertentu, ketik HELP nama-perintah
ASSOC Menampilkan atau memodifikasi asosiasi ekstensi file.
ATTRIB Menampilkan atau mengubah atribut file.
CD Menampilkan nama atau mengubah direktori saat ini.
CLS Membersihkan layar.
COPY Menyalin satu atau beberapa file ke lokasi lain.
DEL Menghapus satu atau beberapa file.
DIR Menampilkan daftar file dan subdirektori dalam direktori.
... (dan seterusnya)
Fitur:
- Hanya menampilkan perintah internal CMD (tidak termasuk program eksternal seperti
ping,ipconfig). - Untuk detail perintah, ketik:
cmd help <nama_perintah>Contoh:
cmd help dir
2. Menampilkan Semua Program yang Dapat Dijalankan (Termasuk Eksternal)
Gunakan Variabel Environment %PATH% + where
where /R "%PATH%" *.*
Output:
C:\Windows\System32\ping.exe
C:\Windows\System32\ipconfig.exe
C:\Windows\System32\cmd.exe
... (semua executable di PATH)
Penjelasan:
where /R: Mencari file rekursif.%PATH%: Variabel sistem yang berisi lokasi program executable.*.*: Filter untuk semua file (termasuk.exe,.bat,.com).
3. Mencari Perintah Spesifik
Cari dengan Wildcard (*)
help *net*
Output:
NET Mengelola layanan jaringan.
NETSTAT Menampilkan statistik protokol dan koneksi TCP/IP.
Cari Program Eksternal
where ping
Hasil:
C:\Windows\System32\ping.exe
4. Perbedaan dengan PowerShell
| Kriteria | CMD (help) |
PowerShell (Get-Command) |
|---|---|---|
| Cakupan | Hanya perintah internal CMD | Semua cmdlet, fungsi, alias, dan aplikasi |
| Detail | Deskripsi singkat | Object-based dengan metadata lengkap |
| Pencarian | Dasar (hanya teks) | Advanced (filter by module, verb, dll.) |
| Program Eksternal | Tidak tercantum di help |
Muncul di Get-Command |
5. Daftar Perintah CMD Penting
Berikut beberapa perintah bawaan CMD yang sering digunakan:
| Perintah | Fungsi |
|---|---|
dir |
Menampilkan daftar file/direktori. |
copy |
Menyalin file. |
del |
Menghapus file. |
ipconfig |
Menampilkan konfigurasi IP. |
ping |
Mengecek koneksi jaringan. |
netstat |
Menampilkan koneksi jaringan aktif. |
tasklist |
Menampilkan daftar proses yang berjalan. |
shutdown |
Mematikan/restart komputer. |
6. Cara Melihat Daftar Lengkap (Termasuk Aplikasi Eksternal)
Jika ingin melihat semua executable yang bisa dijalankan di CMD (termasuk program pihak ketiga seperti git, python, dll):
echo Daftar Program di PATH:
echo %PATH:;=& echo.%
Hasil:
C:\Windows\System32
C:\Windows
C:\Python310\Scripts\
...
7. Kesimpulan
help→ Hanya untuk perintah internal CMD.where /R "%PATH%" *.*→ Untuk semua program di PATH (termasuk.exeeksternal).- CMD lebih terbatas dibanding PowerShell dalam hal daftar perintah.
Jika butuh daftar lebih lengkap, gunakan PowerShell (Get-Command) atau tools seperti:
- choco list (jika pakai Chocolatey).
- where /R C:\ *.exe (scan manual).
🚀
Daftar dan Konsep Object-Oriented dalam PowerShell
PowerShell memang berbasis objek (object-oriented), artinya hampir semua output perintah adalah objek .NET dengan properti dan metode, bukan sekadar teks. Berikut penjelasan mendalam tentang objek-objek tersebut:
1. Daftar Kategori Objek Utama di PowerShell
Objek di PowerShell berasal dari .NET Framework dan modul-modul PowerShell. Berikut kategori beserta contohnya:
A. Objek Bawaan (Core Objects)
| Jenis Objek | Contoh Cmdlet | Contoh Properti/Metode |
|---|---|---|
| System.String | "Hello" |
.Length, .ToUpper(), .Substring() |
| System.Int32 | 42 |
.ToString(), .GetType() |
| System.Array | 1,2,3 |
.Count, [0] (indexing) |
| System.DateTime | Get-Date |
.Day, .AddDays(7), .ToString("yyyy-MM-dd") |
B. Objek Administrasi Sistem
| Jenis Objek | Contoh Cmdlet | Contoh Properti |
|---|---|---|
| System.Diagnostics.Process | Get-Process |
.Name, .Id, .CPU, .Kill() |
| Microsoft.PowerShell.Commands.ServiceController | Get-Service |
.Status, .DisplayName, .Start() |
| System.IO.FileInfo | Get-ChildItem |
.FullName, .LastWriteTime, .Delete() |
C. Objek Jaringan
| Jenis Objek | Contoh Cmdlet | Properti |
|---|---|---|
| Microsoft.PowerShell.Commands.TestConnection+PacketStatus | Test-NetConnection |
.RemoteAddress, .PingSucceeded |
| System.Net.NetworkInformation.PingReply | Test-Connection |
.Address, .RoundtripTime |
D. Objek Kustom (Custom Objects)
Anda bisa buat objek sendiri:
$user = [PSCustomObject]@{
Name = "John"
Age = 30
Role = "Admin"
}
$user.Name # Output: "John"
2. Cara Melihat Daftar Objek yang Tersedia
A. Cek Tipe Objek dari Cmdlet
Gunakan Get-Member untuk melihat properti/metode suatu objek:
Get-Process | Get-Member
Output:
TypeName: System.Diagnostics.Process
Name MemberType Definition
---- ---------- ----------
Name Property string Name {get;}
Id Property int Id {get;}
...
Kill Method void Kill()
B. Eksplorasi Namespace .NET
PowerShell mengakses seluruh .NET Framework. Contoh:
[System.IO.Directory] | Get-Member -Static # Lihat metode static
C. Daftar Modul dan Kelas Terkait
Get-Module -ListAvailable | ForEach-Object { $_.ExportedTypes }
3. Perkiraan Jumlah Objek
- Ribuan objek tersedia, tergantung modul yang di-load.
- Contoh: Modul
Microsoft.PowerShell.Managementsaja mengekspor 150+ kelas objek. - Seluruh .NET Framework memiliki 60.000+ tipe (tidak semua digunakan di PowerShell).
4. Contoh Manipulasi Objek
A. Filter Berdasarkan Properti
Get-Service | Where-Object { $_.Status -eq "Running" }
B. Sorting Objek
Get-ChildItem | Sort-Object -Property Length -Descending
C. Memanggil Metode
(Get-Date).AddDays(7) # Tambah 7 hari dari tanggal sekarang
5. Daftar Objek Penting untuk Administrasi
| Cmdlet | Tipe Objek | Kegunaan |
|---|---|---|
Get-Process |
System.Diagnostics.Process |
Manajemen proses |
Get-Service |
System.ServiceProcess.ServiceController |
Manajemen layanan |
Get-EventLog |
System.Diagnostics.EventLogEntry |
Membaca event log |
Get-WmiObject |
System.Management.ManagementObject |
Akses WMI (Windows Management) |
Get-ADUser |
Microsoft.ActiveDirectory.Management.ADUser |
Manajemen Active Directory |
6. Keunggulan Object-Oriented PowerShell
✅ Struktur Data Kaya: Properti dan metode terorganisir.
✅ Manipulasi Lanjutan: Bisa di-filter, di-sort, atau di-ekspor ke format lain (JSON, CSV).
✅ Integrasi dengan .NET: Bisa pakai kelas .NET langsung (misal: [System.Math]::Sqrt(16)).
7. Cara Belajar Objek PowerShell
- Gunakan
Get-Member:
powershell Get-Service | Get-Member - Eksplor Dokumentasi:
- Microsoft .NET API Browser
Get-Help <cmdlet> -Full
- Praktik Langsung:
powershell (Get-Process -Name "chrome").CPU # Lihat properti CPU
8. Kesimpulan
- PowerShell menggunakan ribuan objek .NET untuk administrasi sistem.
- Setiap objek punya properti (data) dan metode (aksi).
- Gunakan
Get-MemberdanGet-Typeuntuk eksplorasi.
Dengan memahami objek, Anda bisa memaksimalkan kemampuan scripting PowerShell! 🚀
Referensi:
- Microsoft Docs: About Objects
- PowerShell Object Cheat Sheet
Tujuan dan Fungsi Utama PowerShell oleh Microsoft
PowerShell dirilis oleh Microsoft bukan sekadar sebagai alat scripting, melainkan sebagai platform otomatisasi dan manajemen sistem yang revolusioner. Berikut penjelasan mendalam tentang tujuan pengembangannya:
1. Latar Belakang Peluncuran PowerShell
PowerShell pertama kali diperkenalkan tahun 2006 (versi 1.0) untuk mengatasi keterbatasan tools tradisional seperti: - CMD/DOS: Hanya berbasis teks, tidak terstruktur. - VBScript: Sulit di-debug dan kurang powerful. - GUI Tools (e.g., MMC): Tidak bisa diotomatisasi.
Target Pengguna:
- Administrator Sistem
- DevOps Engineers
- Pengembang (Developers)
2. Tujuan Utama PowerShell
A. Otomatisasi Administrasi Sistem
- Menggantikan tugas manual berulang di Windows/Linux/macOS.
- Contoh:
powershell # Otomatisasi backup harian Compress-Archive -Path "C:\Data\*" -DestinationPath "D:\Backup\Data_$(Get-Date -Format 'yyyyMMdd').zip"
B. Manajemen Konfigurasi
- Terintegrasi dengan Microsoft Ecosystem:
- Active Directory
- Azure Cloud
- Exchange Server
- SQL Server
Contoh:
powershell # Membuat 100 user di Active Directory 1..100 | ForEach-Object { New-ADUser -Name "User$_" -Enabled $true -AccountPassword (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force) }
C. Cross-Platform Management
- Sejak PowerShell Core 6.0 (2018), PowerShell bisa berjalan di:
- ✅ Windows
- ✅ Linux (Ubuntu, RHEL, dll.)
- ✅ macOS
D. Integrasi dengan Teknologi Modern
- Cloud Computing (Azure, AWS, GCP).
- Containerization (Docker, Kubernetes).
- Infrastructure as Code (IaC) (Terraform, Ansible).
3. Keunggulan PowerShell Dibanding Tools Lain
| Kriteria | PowerShell | CMD/Bash | Python |
|---|---|---|---|
| Output | Objek (bisa difilter/modifikasi) | Teks (harus parsing) | Objek/teks |
| Integrasi OS | Deep Windows integration | Terbatas | Butuh library tambahan |
| Learning Curve | Menengah | Rendah | Tinggi |
| Use Case | Administrasi sistem + scripting | Tugas sederhana | Aplikasi kompleks |
4. Contoh Aplikasi Nyata PowerShell
A. Sistem Administrator
- Patch Management:
powershell # Update semua Windows PC di jaringan Invoke-Command -ComputerName (Get-ADComputer -Filter *).Name -ScriptBlock { Install-WindowsUpdate -AcceptAll -AutoReboot }
B. DevOps Engineer
- Deploy Aplikasi ke Azure:
powershell # Deploy web app ke Azure Publish-AzWebApp -ResourceGroupName "MyRG" -Name "MyApp" -ArchivePath ".\app.zip"
C. Security Analyst
- Audit Keamanan:
powershell # Cek user dengan password tidak pernah kedaluwarsa Get-ADUser -Filter * | Where-Object { $_.PasswordNeverExpires -eq $true }
5. Evolusi PowerShell
- 2006: PowerShell 1.0 (hanya Windows).
- 2016: PowerShell jadi open-source.
- 2018: PowerShell Core 6.0 (cross-platform).
- 2023: PowerShell 7.3+ dengan fitur parallel processing, pipeline improvement.
6. Apakah PowerShell untuk Programming?
✅ Ya, tapi dengan karakteristik khusus:
- Bahasa scripting untuk otomatisasi.
- Bisa dipakai untuk development (e.g., bikin tools CLI).
- Bukan pengganti C#/Java untuk aplikasi enterprise.
Contoh script advanced:
# REST API Client dalam PowerShell
$response = Invoke-RestMethod -Uri "https://api.github.com/users/microsoft/repos"
$response | Where-Object { $_.stargazers_count -gt 100 } | Select-Object name, description
7. Kesimpulan: Untuk Apa PowerShell?
- Utama: Administrasi sistem, otomatisasi tugas, manajemen cloud.
- Sekunder: Scripting, prototyping, tools development.
- Keunikan: Object-oriented pipeline, deep OS integration, cross-platform.
PowerShell adalah "alat multifungsi" yang wajib dikuasai oleh:
🔹 SysAdmin Windows
🔹 Cloud Engineer
🔹 Security Professional
Referensi Resmi:
- Microsoft PowerShell Documentation
- PowerShell GitHub
Cara Mengecek Versi PowerShell & Proses Update/Upgrade
Berikut panduan lengkap untuk mengecek versi PowerShell dan cara memperbaruinya:
1. Mengecek Versi PowerShell yang Terinstall
Perintah Dasar: $PSVersionTable
$PSVersionTable.PSVersion
Contoh Output:
Major Minor Patch PreReleaseLabel BuildLabel
----- ----- ----- -------------- ---------
7 3 4
Artinya: PowerShell 7.3.4.
Alternatif Lain:
- Via
Get-Host:powershell Get-Host | Select-Object Version - Via Environment Variable:
powershell $PSVersionTable.PSEdition # Menunjukkan "Core" (PS 7+) atau "Desktop" (PS 5.1)
2. Perbedaan PowerShell Versi
| Versi | Nama Resmi | Sistem Operasi | Keterangan |
|---|---|---|---|
| 5.1 | Windows PowerShell | Hanya Windows | Bawaan Windows 10/11 |
| 7.0+ | PowerShell Core | Windows, Linux, macOS | Versi cross-platform (open-source) |
3. Cara Update/Upgrade PowerShell
A. Untuk PowerShell 7+ (PowerShell Core)
Update via PowerShell Command (Windows)
# 1. Cek versi terbaru
$latestRelease = Invoke-RestMethod -Uri "https://api.github.com/repos/PowerShell/PowerShell/releases/latest"
$latestVersion = $latestRelease.tag_name -replace '^v'
# 2. Download installer terbaru
$downloadUrl = $latestRelease.assets | Where-Object { $_.name -match 'win-x64.msi$' } | Select-Object -ExpandProperty browser_download_url
Invoke-WebRequest -Uri $downloadUrl -OutFile "$env:TEMP\PowerShell-$latestVersion-win-x64.msi"
# 3. Jalankan installer
Start-Process -FilePath "$env:TEMP\PowerShell-$latestVersion-win-x64.msi" -Wait
Catatan:
- Anda perlu menjalankan PowerShell sebagai Administrator.
- Setelah update, buka sesi baru dan cek versi dengan $PSVersionTable.
Alternatif (Windows): Pakai Winget
winget upgrade --id Microsoft.PowerShell
B. Untuk Windows PowerShell 5.1 (Versi Legacy)
- Tidak bisa diupgrade ke versi baru melalui command (karena bagian dari Windows).
- Solusi:
- Install PowerShell 7 secara berdampingan (side-by-side).
- Gunakan perintah kompatibilitas:
powershell # Jalankan script PS 5.1 dari PS 7 pwsh -Command { .\script-legacy.ps1 }
C. Di Linux/macOS
Ubuntu/Debian
# Update via package manager
sudo apt update && sudo apt upgrade powershell
RHEL/CentOS
sudo yum update powershell
macOS (Homebrew)
brew update && brew upgrade powershell
4. Verifikasi Setelah Update
# Pastikan versi terbaru aktif
pwsh -Version
atau buka PowerShell baru dan cek $PSVersionTable.
**5. Rekomendasi Versi
- Untuk Umum: Gunakan PowerShell 7.3+ (fitur lebih baru, lebih cepat).
- Kompatibilitas: Jika butuh modul lama (e.g.,
ActiveDirectorydi Windows Server), pakai PowerShell 5.1.
6. Troubleshooting
- Error "Module Tidak Kompatibel" di PS 7:
powershell # Jalankan dengan kompatibilitas Import-Module -Name NamaModule -UseWindowsPowerShell - Installer Gagal:
- Download manual dari PowerShell GitHub.
- Nonaktifkan antivirus sementara.
7. Kesimpulan
- Cek Versi: Gunakan
$PSVersionTableatauGet-Host. - Update PowerShell 7: Bisa lewat command langsung (Windows/Linux/macOS).
- PowerShell 5.1: Tidak bisa diupgrade, hanya patch via Windows Update.
Dengan versi terbaru, Anda dapat fitur seperti:
✅ Parallel processing (ForEach-Object -Parallel).
✅ Operasi file lebih cepat.
✅ Dukungan .NET Core.
Jika ada kendala, coba uninstall versi lama terlebih dahulu. 🚀
Referensi:
- Instalasi Resmi PowerShell
- Dokumentasi Versi