Windows PowerShell merupakan bagian integral dari sistem operasi Windows. Ini adalah shell baris perintah dan bahasa scripting yang digunakan untuk mengotomatiskan tugas berulang yang memakan waktu, membuat alat manajemen kustom, dan membangun, menguji, dan menerapkan solusi untuk berbagai masalah lainnya.
Versi PowerShell default yang dikemas sebelumnya di dalam sistem operasi Windows adalah PowerShell 5.1, atau hanya Windows PowerShell. Tetapi dengan PowerShell 7 yang sudah dirilis dan stabil, bukankah lebih masuk akal jika OS Windows menggunakan PowerShell versi terbaru? Apa manfaat yang diberikan PowerShell 7? Dan apakah itu layak untuk ditingkatkan? Mari kita bicarakan!
Apa itu PowerShell 7?
PowerShell 7 adalah versi rilis LTS terbaru dari PowerShell. Versi PowerShell ini dikembangkan melalui kerangka kerja .NET Core yang lebih baru, yang memungkinkan beberapa pembaruan besar yang akan berguna bagi pengguna daya Windows.
PowerShell 7 terdaftar dan dilisensikan di bawah Lisensi MIT. Sekarang
perangkat lunak sumber terbuka, di mana orang dapat dengan bebas melihat, memodifikasi, dan mendistribusikan salinan kode sumber perangkat lunak mereka sendiri. Pengembang juga dapat berkontribusi pada rilis resmi PowerShell dengan bergabung Halaman GitHub resmi PowerShell.Dengan dukungan komunitasnya, versi PowerShell ini sekarang lintas platform! Artinya sekarang dapat diinstal dan digunakan di Windows, macOS, dan Linux. Berikut adalah daftar sistem operasi x64 yang didukung:
- Jendela 8.1, 10, 11
- Windows Server 2012, 2012 R2, 2016, dan 2019
- macOS 10.13+
- Red Hat Enterprise Linux (RHEL) / CentOS 7
- Fedor 30+
- Debian 9
- Ubuntu LTS 16.04+
Alpine Linux 3.8+ PowerShell 7 juga didukung di berbagai distro ARM32 dan ARM64 Debian, Ubuntu, dan ARM64 Alpine Linux. Bagi yang berminat, ada juga paket yang tidak didukung untuk Arch dan Kali Linux.
Apa Fitur Baru yang Termasuk dalam PowerShell 7?
Selain lintas platform dan bersumber terbuka, PowerShell 7 memiliki banyak fitur baru lainnya yang semakin meningkatkan produktivitas. Berikut adalah beberapa yang terkenal:
1. Kompatibilitas Mundur yang Ditingkatkan
Dengan perbedaan framework, versi Windows PowerShell dan PowerShell yang menggunakan framework .NET Core akan memiliki ketidaksesuaian. Untuk memudahkan orang melakukan transisi, PowerShell 7 kini mengintegrasikan modul WindowsCompatibility. Modul ini dirancang untuk memungkinkan modul Windows PowerShell dan banyak lagi perintah CMD populer untuk bekerja di PowerShell 7.
2. Paralelisasi Pipa Dengan ForEach-Object
PowerShell 7 sekarang memiliki parameter Paralel. Di Windows PowerShell, setiap objek yang disalurkan menggunakan cmdlet ForEach-Object akan dieksekusi satu per satu. Tapi dengan parameter Paralel yang baru, semua objek yang disalurkan sekarang dijalankan secara bersamaan. Ini secara drastis meningkatkan kinerja yang dapat menghemat waktu Anda.
3. Operator Terner
Persyaratan Windows PowerShell dilakukan melalui pernyataan if-else. PowerShell 7 membuatnya lebih sederhana dengan memperkenalkan operator ternary, yang pada dasarnya adalah versi sederhana dari pernyataan if-else dengan menggunakan "?" dan ":" dalam sintaks. Fitur ini memungkinkan pengalaman pembuatan skrip yang lebih cepat dan lebih bersih.
4. Operator Rantai Pipa
Operator saluran pipa adalah fitur penting dari Windows PowerShell. Ini memungkinkan Anda membuat ekspresi kompleks dengan mengambil keluaran cmdlet dan menggunakannya di cmdlet lain. Namun, ini terbatas karena Windows PowerShell tidak dapat memproses ekspresi bersyarat menggunakan operator jalur pipa biasa.
PowerShell 7 memperbaiki masalah ini dengan memperkenalkan operator rantai pipa, yaitu “&&” dan “||”. Operator pipa baru ini memungkinkan PowerShell untuk mengeksekusi perintah dengan ekspresi bersyarat.
Operator && digunakan untuk mengeksekusi perintah pipa sebelah kanan hanya jika perintah sebelum operator berhasil. Sementara operator || hanya akan mengeksekusi perintah pipa sebelah kanan jika perintah sebelum operator gagal.
Mengapa PowerShell 7 Bukan Default di Windows?
PowerShell 7 adalah perangkat lunak lintas platform bersumber terbuka yang menyediakan fitur yang dapat meningkatkan kinerja dan kecepatan skrip secara drastis. Jadi mengapa Microsoft tidak menjadikannya sebagai PowerShell default di Windows?
PowerShell saat ini yang sudah diinstal sebelumnya dengan sistem Windows yang lebih baru adalah PowerShell 5.1. Ini adalah versi PowerShell terakhir yang menggunakan .NET framework. Meskipun benar bahwa versi berikutnya menyediakan fitur yang lebih baik, Windows PowerShell masih memiliki satu keunggulan yang tidak dimiliki oleh PowerShell yang lebih baru—menyelesaikan kompatibilitas ke belakang.
PowerShell pertama dirilis pada 14 November 2006. Saat itulah Windows Vista dan XP masih merupakan OS Windows terbaru. Berdasarkan penelitian dari enlyft, Amerika Serikat sendiri memiliki lebih dari 46.000 perusahaan yang masih menggunakan Windows XP. Perusahaan-perusahaan ini tidak dapat memutakhirkan ke PowerShell terbaru karena akan menyebabkan banyak masalah ketidakcocokan mundur bahkan dengan modul Kompatibilitas Windows terintegrasi PowerShell 7.
Untuk perusahaan besar dan berbagai infrastruktur kritis (ATM, pemasok energi, kereta api, rumah sakit, dll.), penundaan layanan selama berminggu-minggu hingga berbulan-bulan hanya untuk membangun kembali, menguji, dan menerapkan skrip yang sudah berfungsi dengan PowerShell 5.1 sama sekali bukan pilihan. Jangankan semua bug yang mungkin keluar selama jam operasional sebenarnya.
Karena PowerShell 5.1 adalah PowerShell terbaru yang dibangun di atas. NET, dijamin untuk bekerja dengan semua versi PowerShell sebelumnya, bahkan yang dirilis pada tahun 2006.
Haruskah Anda Meng-upgrade ke PowerShell 7?
PowerShell 7 memberikan banyak pembaruan berguna yang membuat antarmuka baris perintah dan pembuatan skrip lebih mudah, lebih cepat, dan lebih nyaman dengan dukungan lintas platformnya. Sebaliknya, Windows PowerShell menyediakan kompatibilitas mundur yang lengkap untuk semua PowerShell lawas sebelum PowerShell 6. Jadi, apakah Anda harus tetap menggunakan Windows PowerShell atau memutakhirkan ke PowerShell 7 yang lebih baru?
Hal yang baik tentang PowerShell 7 adalah ia dirancang untuk hidup berdampingan dengan Windows PowerShell 5.1. Selain modul WindowsCompatibility terintegrasi, PowerShell 7 juga menyediakan jalur penginstalan terpisah, nama yang dapat dieksekusi, PSModulePath, dan log peristiwa untuk memastikannya tidak mengganggu Windows yang sudah terinstal PowerShell.
Jadi, untuk sebagian besar orang yang ingin mencoba fitur baru PowerShell 7, mereka pasti dapat melakukannya dengan tetap mempertahankan Windows PowerShell default mereka. Jika Anda penasaran apakah PowerShell yang lebih baru cocok untuk Anda, maka Anda harus mencoba PowerShell yang lebih baru.
Meskipun PowerShell 7 memberikan kompatibilitas mundur yang baik, akan selalu ada beberapa ketidaksesuaian karena perbedaan kerangka kerja mereka. Jika Anda bekerja di perusahaan atau organisasi yang sangat bergantung pada alat dan program khusus yang dibuat dari Windows PowerShell, memigrasikan sistem perusahaan ke PowerShell 7 mungkin bukan ide yang bagus.
PowerShell 7 menyediakan banyak pembaruan tetapi juga menjatuhkan beberapa modul dan cmdlet lawas. Jika Anda adalah orang yang sudah senang dengan PowerShell default, maka tidak ada alasan untuk bermigrasi, terutama jika Anda tidak punya waktu untuk membaca dokumentasi.
PowerShell 7 Membuat Scripting Lebih Cepat
PowerShell 7 adalah salah satu versi PowerShell stabil terbaru dengan Long Term Support (LTS). Ini memberikan cara yang lebih cepat dan lebih mudah untuk menggunakan PowerShell, meskipun menggunakan sistem operasi lain seperti macOS atau Linux. Meskipun mungkin memerlukan sedikit waktu untuk membaca dokumentasinya, pada akhirnya Anda akan menghemat lebih banyak waktu setelah Anda mahir dengan pembaruan baru.