Tutorial Powershell untuk Pemula
โก Ringkasan Cerdas
PowerShell Scripting adalah mesin otomatisasi berorientasi objek yang dibangun di atas kerangka kerja .NET. Ia menggabungkan cmdlet, skrip, dan bahasa skrip untuk membantu administrator TI mengotomatisasi berbagai tugas. Windows, mengelola layanan, dan menghubungkan mesin jarak jauh dari satu baris perintah.

Apa itu PowerShell?
Windows PowerShell adalah mesin otomatisasi berorientasi objek dan bahasa skrip. Dirancang untuk para profesional TI dan administrator sistem yang perlu mengontrol dan mengotomatisasi administrasi sistem. Windows dan aplikasi lainnya. PowerShell memperluas konsep yang dipelajari di Windows Prompt Perintah dan Windows Script Host dengan objek, cmdlet, dan pipeline yang canggih.
PowerShell menggabungkan fleksibilitas scripting, kecepatan baris perintah, dan kedalaman alat administrasi GUI. Dengan PowerShell, administrator dapat menyelesaikan masalah secara efisien dan menghilangkan berjam-jam pekerjaan manual. Tutorial ini akan membahas hal-hal penting yang perlu Anda pelajari untuk menguasai PowerShell dari awal.
Mengapa Menggunakan PowerShell?
Alasan terpenting untuk menggunakan PowerShell adalah:
- Menawarkan pengalaman baris perintah yang terintegrasi dengan baik untuk sistem operasi.
- Menyediakan akses lengkap ke setiap tipe dalam kerangka kerja .NET.
- Dipercaya oleh administrator sistem di berbagai perusahaan.
- Memungkinkan Anda memanipulasi komponen server dan workstation hanya dengan beberapa baris kode.
- Ditujukan untuk administrator sistem dengan sintaks kata kerja-kata benda yang rapi.
- Lebih aman daripada berlari vbscript atau bahasa skrip lama lainnya.
Sejarah PowerShell
PowerShell 1.0 pertama kali dirilis pada tahun 2006. Sekarang PowerShell sudah mencapai versi 7.2 dan seterusnya. Seiring dengan dirilisnya versi-versi baru, kemampuan dan lingkungan hosting-nya berkembang secara signifikan.
Riwayat PowerShell berdasarkan versi:
- PowerShell 1.0 โ mendukung administrasi lokal dari Windows Server 2003.
- PowerShell 2.0 โ terintegrasi dengan Windows 7 dan Windows Server 2008 R2. Menambahkan fitur remote, transaksi, pekerjaan latar belakang, event, dan debugging.
- PowerShell 3.0 โ dikirim dengan Windows 8 dan Windows Server 2012 sebagai bagian dari Windows Kerangka Kerja Manajemen. Menambahkan tugas terjadwal, konektivitas sesi, dan pemuatan modul otomatis.
- PowerShell 4.0 โ dikirim dengan Windows 8.1 dan Windows Server 2012 R2. Menambahkan Desired State Configuration, peningkatan debugging, dan diagnostik jaringan.
- PowerShell 5.0 โ bagian dari Windows Kerangka Kerja Manajemen 5. Menambahkan debugging jarak jauh, definisi kelas, dan enumerasi .NET.
- PowerShell 7.2 โ Dibangun di atas .NET 6.0. Menambahkan operator baru, tampilan kesalahan dinamis, dan pemberitahuan versi otomatis.
Fitur-fitur PowerShell
- PowerShell Remoting: Menjalankan skrip dan cmdlet pada mesin jarak jauh.
- Pekerjaan Latar Belakang: Menjalankan skrip atau pipeline secara asinkron pada mesin lokal atau banyak mesin jarak jauh.
- Transaksi: Izinkan cmdlet dan pengembang untuk melakukan operasi yang dikelompokkan sehingga dapat di-commit atau di-rollback secara bersamaan.
- Acara: Mendengarkan, meneruskan, dan menindaklanjuti peristiwa manajemen dan sistem.
- Transfer File Jaringan: Dukungan asli untuk transfer file yang diprioritaskan, asinkron, dan dibatasi antar mesin melalui Background Intelligent Transfer Service (BITS).
Cara Meluncurkan PowerShell
PowerShell sudah terinstal di setiap versi terbaru dari WindowsJalankan sebagai berikut.
Langkah 1) Cari PowerShell di Windows, lalu pilih dan klik.
Langkah 2) Jendela PowerShell terbuka.
Cmdlet vs. Perintah
A cmdlet Cmdlet (diucapkan โcommand-letโ) adalah perintah ringan yang digunakan dalam lingkungan PowerShell. PowerShell memanggil cmdlet pada prompt, dan Anda dapat membuat sendiri menggunakan API PowerShell. Cmdlet berbeda dari perintah shell tradisional dalam hal-hal berikut:
- Cmdlet adalah NET. Kerangka objek kelas; objek tersebut tidak dapat dieksekusi sebagai program yang berdiri sendiri.
- Cmdlet dapat ditulis hanya dalam selusin baris kode.
- Penguraian, pemformatan keluaran, dan penyajian kesalahan ditangani oleh runtime, bukan oleh cmdlet itu sendiri.
- Cmdlet bekerja dengan objek, sehingga aliran teks dan objek dapat mengalir melalui pipeline.
- Cmdlet berbasis record dan memproses satu objek dalam satu waktu.
Sebagian besar fungsi PowerShell disampaikan melalui cmdlet, yang selalu menggunakan pola penamaan kata kerja-kata benda (selalu tunggal). Cmdlet mengembalikan objek, bukan teks. A naskah โ berbeda dengan cmdlet โ adalah serangkaian perintah yang disimpan dalam file teks dengan .ps1 perpanjangan.
Kata kerja umum yang akan Anda gunakan untuk mempelajari PowerShell meliputi:
- Dapatkan โ mengambil sesuatu.
- Start โ jalankan sesuatu.
- Di luar โ menghasilkan sesuatu.
- berhenti โ menghentikan sesuatu yang sedang berjalan.
- set โ mendefinisikan sesuatu.
- New โ ciptakan sesuatu.
Perintah PowerShell penting
Mendapatkan bantuan: Lihat bantuan untuk perintah dan topik PowerShell.
Contoh: menampilkan bantuan untuk Format-Table perintah.
Get-Help Format-Table
Dapatkan-Perintah: Dapatkan informasi tentang segala sesuatu yang dapat dipanggil.
Contoh: menghasilkan daftar cmdlet dan fungsi yang terpasang pada mesin.
Get-Command
Dapatkan Layanan: Menemukan semua layanan pada mesin tersebut.
Contoh: dapatkan semua layanan yang namanya diawali dengan "vm".
Get-Service "vm*"
Dapatkan Anggota: Menunjukkan apa yang dapat dilakukan dengan suatu objek.
Contoh: daftar anggota layanan vm yang dikembalikan oleh Get-Service.
Get-Service "vm*" | Get-Member
Cmdlet berguna lainnya:
Get-Moduleโ menampilkan paket perintah yang terpasang.Get-Contentโ membaca sebuah file dan memproses isinya.Get-*wildcard โ mencantumkan setiap cmdlet yang diawali dengan โGet-โ.
Contoh: membuat folder.
New-Item -Path 'X:\Guru99' -ItemType Directory
Keluaran:
Tipe Data PowerShell
PowerShell mendukung tipe data .NET standar sehingga Anda dapat menyimpan nilai apa pun dengan rapi dalam sebuah variabel.
Variabel Khusus
PowerShell menyediakan sejumlah variabel khusus bawaan. Variabel yang paling berguna tercantum di bawah ini.
| Variabel Khusus | Deskripsi |
|---|---|
| $Kesalahan | Sebuah array objek kesalahan yang mewakili kesalahan terbaru. |
| $Tuan Rumah | Menampilkan nama aplikasi hosting saat ini. |
| $Profil | Menyimpan jalur lengkap profil pengguna untuk shell default. |
| $PID | Menyimpan pengidentifikasi proses. |
| $PSUICulture | Mengandung nama budaya UI saat ini. |
| $BATAL | Berisi nilai kosong atau null. |
| $Salah | Berisi nilai boolean FALSE. |
| $Benar | Berisi nilai boolean TRUE. |
Skrip PowerShell
Skrip PowerShell disimpan di .ps1 Secara default, Anda tidak dapat menjalankan skrip dengan mengkliknya dua kali โ pengamanan ini melindungi sistem dari kerusakan yang tidak disengaja. Untuk menjalankan skrip, klik kanan dan pilih โJalankan dengan PowerShellโ.
Kebijakan eksekusi mengontrol skrip mana yang diizinkan untuk dijalankan. Lihat kebijakan saat ini dengan Get-ExecutionPolicyNilai yang mungkin meliputi:
- Terbatas โ Skrip tidak diizinkan. Ini adalah pengaturan default.
- Semua Ditandatangani โ Hanya skrip yang ditandatangani oleh pengembang tepercaya yang dapat dijalankan, dan setiap skrip memerlukan konfirmasi.
- RemoteSigned โ skrip Anda sendiri dijalankan, ditambah skrip yang ditandatangani dari sumber tepercaya.
- Tidak dibatasi โ skrip apa pun dapat dijalankan (gunakan dengan hemat).
Langkah-langkah untuk mengubah kebijakan eksekusi:
Langkah 1) Buka prompt PowerShell dengan hak akses administrator dengan mengklik kanan PowerShell dan memilih Run as Administrator.
Langkah 2) Jalankan perintah di bawah ini.
Get-ExecutionPolicySet-ExecutionPolicy Unrestricted- Enter
Ypada prompt konfirmasi. Get-ExecutionPolicy
Skrip PowerShell Pertama
Buka Notepad dan ketik:
Write-Host "Hello, Guru99!"
Simpan file dengan .ps1 perluasan โ misalnya, FirstScript.ps1.
Di PowerShell, jalankan skrip dengan perintah berikut:
& "X:\FirstScript.ps1"
Apa itu PowerShell ISE?
The Windows Lingkungan Skrip Terintegrasi (ISE) PowerShell ISE adalah editor default untuk PowerShell. Di ISE, Anda dapat menjalankan perintah, menulis pengujian, dan men-debug skrip dalam lingkungan berbasis jendela grafis. ISE mendukung pengeditan multi-baris, pewarnaan sintaks, penyelesaian tab, eksekusi selektif, dan banyak lagi.
PowerShell ISE juga menawarkan panel konsol yang menjalankan perintah secara langsung, sementara panel samping menampilkan kode sumber skrip Anda dan alat apa pun yang terhubung ke ISE. Anda dapat membuka beberapa jendela skrip sekaligus โ berguna saat men-debug skrip yang bergantung pada fungsi yang didefinisikan dalam skrip atau modul lain.
Buat ulang skrip sebelumnya di ISE:
- Tempelkan kode tersebut ke dalam editor.
- Simpan skripnya.
- Tekan F5 untuk menjalankannya.
- Amati output di panel konsol.
Contoh 2: Skrip berikut menampilkan gratis memori virtual pada mesin.
Get-WmiObject -Class Win32_OperatingSystem -ComputerName localhost |
Select-Object -Property CSName, FreeVirtualMemory
PowerShell Concepts
Konsep-konsep berikut membentuk kosakata dalam pekerjaan PowerShell sehari-hari.
| Konsep | Deskripsi |
|---|---|
| Cmdlet | Perintah bawaan yang ditulis dalam bahasa .NET seperti VB atau C#. Pengembang memperluas rangkaian perintah tersebut dengan memuat atau menulis snap-in PowerShell. |
| Fungsi | Perintah yang ditulis dalam bahasa PowerShell itu sendiri, tanpa memerlukan IDE seperti... Visual Studio. |
| Script | File teks pada disk dengan .ps1 perpanjangan. |
| Aplikasi | yang ada Windows Program yang dijalankan dari shell. |
| Bagaimana jika | Memberi tahu cmdlet untuk tidak mengeksekusi, tetapi untuk menjelaskan apa yang akan terjadi jika dieksekusi. |
| Memastikan | Menginstruksikan cmdlet untuk meminta konfirmasi sebelum dieksekusi. |
| Bertele-tele | Memberikan tingkat detail operasional yang lebih tinggi. |
| Debug | Menginstruksikan cmdlet untuk mengeluarkan informasi debugging. |
| Tindakan Kesalahan | Menentukan apa yang dilakukan cmdlet saat terjadi kesalahan. Nilai yang diperbolehkan: continue, stop, silentlycontinue, inquire. |
| Variabel Kesalahan | Menentukan nama variabel yang menyimpan informasi kesalahan. |
| Variabel Luar | Memberi tahu cmdlet untuk menyimpan outputnya dalam variabel tertentu. |
| Di luarBuffer | Menahan sejumlah objek tertentu sebelum mengirimkannya ke dalam pipeline. |
Keuntungan Menggunakan Skrip PowerShell
- Skrip PowerShell sangat ampuh dan ringkas โ Anda dapat mencapai banyak hal hanya dalam beberapa baris.
- Variabel dideklarasikan dengan
$<variable>sintaks. - Variabel dapat menyimpan keluaran perintah, objek, dan nilai primitif.
- Tipe variabel tidak perlu ditentukan secara eksplisit.
PowerShell vs. Command Prompt
| PowerShell | command Prompt |
|---|---|
| Terintegrasi secara mendalam dengan WindowsMenawarkan baris perintah interaktif dan bahasa skrip lengkap. | Antarmuka baris perintah default yang disediakan oleh MicrosoftSebuah aplikasi Win32 sederhana yang berkomunikasi dengan objek Win32 lainnya. |
| Menggunakan cmdlet yang dapat dipanggil secara interaktif atau melalui skrip otomatisasi. | Tidak ada cmdlet. |
| Memperlakukan output sebagai objek sehingga dapat mengalir ke cmdlet lain melalui pipeline. | Outputnya berupa aliran teks biasa, bukan objek. |
| Unggul dalam fitur, kemampuan, dan arsitektur internal. | Shell dasar, cocok untuk tugas batch lama. |
Aplikasi PowerShell
PowerShell telah menjadi pilihan standar bagi administrator TI karena secara dramatis mengurangi upaya di seluruh jaringan perusahaan besar. Bayangkan mengelola lebih dari empat ratus server dan meluncurkan solusi keamanan baru yang bergantung pada layanan spesifik yang berjalan di setiap host.
Masuk ke setiap server secara manual lambat dan rawan kesalahan. Sebuah skrip PowerShell tunggal dapat memeriksa setiap server dalam hitungan menit, melaporkan host mana yang sudah menjalankan layanan tersebut, dan bahkan mengaktifkannya di server lainnya. Skrip tersebut menangkap maksud sekali dan menerapkannya secara andal di seluruh jaringan server.
















