Apa itu PowerShell: Cara kerja dan Fungsinya

Pentingnya administrator sistem di perusahaan tidak boleh diremehkan karena hanya dengan memiliki infrastruktur IT yang andal dan berfungsi terus menerus, perusahaan dapat mencapai efisiensi ekonomi maksimum. Bergantung pada ukuran organisasi, ini membutuhkan: memantau dan mengendalikan lusinan, bahkan ratusan, komputer secara bersamaan. Tugas besar yang hanya dapat dikuasai oleh spesialis terlatih dengan wawasan mendalam tentang koneksi intrasistem.

Jika masalah terjadi pada beberapa komputer secara bersamaan, atau solusi keamanan baru perlu dimuat ke seluruh jaringan secepat mungkin, tidak akan efisien waktu atau ekonomis bagi administrator untuk menemukan setiap perangkat individu dan selalu mengulangi langkah yang sama. Windows PowerShell memungkinkan untuk mempercepat proses dan mengotomatisasi tugas-tugas rutin sebanyak mungkin.

Cara ini akan memudahkan pekerjaan administrator sistem. kamu dapat mengetahui apa lagi yang dapat dilakukan perangkat lunak di artikel kami.

Apa itu Windows PowerShell?

Seperti namanya, Windows PowerShell adalah shell. Dalam teknologi informasi, ini adalah antarmuka antara komputer dan penggunanya. Dalam ilmu komputer, istilah mengacu pada antarmuka pengguna yang terlihat melalui mana kamu dapat berinteraksi dengan fungsi intrasistem komputer.

Shell biasanya berorientasi pada perintah dan dikendalikan secara eksklusif oleh keyboard dan input teks. Mereka adalah alternatif untuk antarmuka pengguna grafis (GUI) yang terutama dinavigasi menggunakan mouse – seperti Windows Explorer. Karena shell juga menyediakan akses ke fungsi dan komponen PC yang jauh lebih banyak dan terletak di bawahnya, shell lebih disukai oleh banyak profesional IT dan administrator sistem.

Mengapa Windows PowerShell ada?


Sampai saat ini, “command.com” baris perintah dan “cmd.exe” prompt adalah shell default pada sistem operasi DOS dan Windows. Mereka memungkinkan pengguna komputer tingkat lanjut untuk membuka aplikasi konsol, mengatasi masalah, atau menavigasi drive PC. Misalnya, perintah netstat memungkinkan untuk menerima informasi dasar tentang semua aktivitas jaringan. Namun, “command.com” dan “cmd.exe” selalu menonjol karena dua masalah: Tidak semua komponen sistem dapat diakses melaluinya dan bahasa skrip mereka dianggap terbatas fungsinya. Oleh karena itu, untuk beberapa waktu mereka tidak dianggap berkembang sepenuhnya seperti shell Linux dan Unix saat ini.

Akibatnya, pengembang Microsoft telah berencana untuk menghapus pembatasan ini sejak tahun 1990-an. Dalam perjalanan waktu, mereka mengembangkan shell yang berbeda, yang terkadang membantu, tetapi terkadang memperburuk keadaan. Monad, yang pertama kali diperkenalkan pada tahun 2003 dan berganti nama menjadi PowerShell tiga tahun kemudian, terbukti sangat inovatif.

Program Microsoft’s Common Engineering Criteria mulai mewajibkan semua produk server perusahaan untuk mendukung PowerShell sejak 2009, sehingga berkembang dengan cepat menjadi manajemen pusat dan solusi otomatisasi di Windows. Dari Windows 2008 dan seterusnya, itu datang sebagai standar dengan sistem operasi. Ini juga tersedia sebagai kerangka kerja sumber terbuka untuk download versi Windows sebelumnya.

Pada tahun 2016, keputusan dibuat untuk menawarkan shell terlepas dari platform. Niat Microsoft: PowerShell harus menjadi alat universal untuk administrator sistem di luar Windows yaitu di Linux dan macOS. Sejak itu, shell telah menyebar lebih dan lebih, dan terus-menerus menerima pendukung baru. Untuk meringkas, PowerShell adalah penerus command prompt yang sudah lama tertunda.

Apa perbedaan antara PowerShell dan command prompt?

Apa sebenarnya yang membedakan kerangka kerja Microsoft baru dari command prompt yang sudah dikenal? Untuk membuatnya lebih sederhana: PowerShell memiliki semua fitur cmd.exe, dapat melakukan banyak hal dengan lebih baik, dan juga melakukan tugas lain yang sebelumnya tidak terpikirkan oleh Windows.

PowerShell pada dasarnya menyediakan rentang perintah yang sama dengan cmd.exe. Dengan pengetahuan yang memadai tentang perintah standar umum, PowerShell dapat digunakan dengan cara yang sama seperti command prompt. Namun, ini juga memungkinkan akses ke internal Windows di bawahnya yang sebelumnya tidak dapat diakses dengan cmd.exe. misalnya Windows Registry dan Instrumentasi Manajemen Windows (WMI). Baris perintah Windows PowerShell juga mengikuti yang jelas logika struktur perintah dan sintaks yang konsisten dan lebih masuk akal daripada cmd.exe dalam hal ini.

Fitur lain yang membuat Windows PowerShell menonjol: Tidak seperti command prompt dan sistem mirip Unix, program ini bekerja sepenuhnya berbasis objek bukannya mengeluarkan hasil perintah dalam bentuk teks (string). Setiap objek memiliki keduanya sifat serta metode yang menentukan bagaimana itu dapat digunakan. Ini adalah bagaimana objek proses Windows mewakili properti seperti nama proses dan ID, dan metode untuk menjeda dan menghentikan proses.

Karena hasil perintah selalu dikeluarkan sebagai objek .NET, pipelining di PowerShell memungkinkan melakukan tugas yang jauh lebih kompleks daripada cmd.exe. Ini bekerja dengan menggunakan output dari satu objek dalam pipa sebagai input untuk objek berikutnya. Misalnya, data dalam jumlah besar dan kompleks dapat difilter menurut ekstensi file dan diformat sebagai daftar yang jelas.

Windows PowerShell bukan hanya baris perintah, tetapi juga berfungsi sebagai lingkungan skrip yang kaya dan kuat. Di dalamnya, kita dapat menulis perintah sendiri atau menggabungkan beberapa perintah ke dalam skrip kompleks untuk menyederhanakan tugas manajemen sistem. Selain itu juga memungkinkan untuk menjalankan skrip pada sejumlah sistem secara bersamaan, terlepas dari lokasinya, dan dengan demikian akan mudah mengelola, mengatur, merekam, dan memperbaikinya.

Berbagai opsi dan fitur ini juga mengungkapkan grup target utama Windows PowerShell: Profesional IT dan administrator sistem yang memiliki pemahaman mendalam tentang shell dan bersedia membiasakan diri dengan Windows PowerShell untuk meningkatkan efisiensi. Pengguna yang sebagian besar bekerja dengan antarmuka pengguna grafis Windows dan hanya menggunakan command prompt secara sporadis, bagaimanapun, akan melihat bahwa PowerShell tidak menawarkan nilai tambah tertentu, terutama karena butuh beberapa saat untuk membiasakan diri dengan kerangka kerja.

Bagaimana cara kerja Windows PowerShell?

PowerShell pada dasarnya terdiri dari dua komponen, yaitu: Mesin PowerShell dan Bahasa skrip PowerShell. Keduanya dapat digunakan secara terpisah atau bersama-sama untuk mendapatkan fungsionalitas maksimal dari program.

Mesin PowerShell

PowerShell’s penerjemah baris perintah (CLI) memberi pengguna akses ke sistem operasi internal fungsi melalui entri keyboard. Perintah program disebut “cmdlet” (diucapkan “commandlet”). Menurut sintaks yang konsisten, mereka selalu terdiri dari kata kerja dan kata benda dalam bentuk tunggal misalnya “hentikan proses” atau “mengurutkan objek”. Parameter ditentukan dalam cmdlet sesuai dengan – Parameter [nilai] rumus, misalnya:

Get-EventLog System Newest 3 (to access the three most recent entries in the system event log)

Lebih dari 100 cmdlet inti juga menyertakan perintah standar yang sering digunakan dari command prompt, yang tersedia sebagai “alias”, antara lain, untuk membantu pengguna memulai dengan shell baru. Misalnya, cd perintah yang dimaksudkan untuk mengubah direktori memiliki persamaan “tentukan lokasi”, yang melakukan fungsi yang persis sama. Untuk melihat semua alias yang dibuat sebelumnya, gunakan tombol “Dapatkan-Alias” cmdlet. kamu juga dapat menggunakan Set-Alias cmdlet untuk membuat alias kamu sendiri. Misalnya, dapat menggunakan saluran berikut untuk menetapkan alias “ed” ke perintah “notepad” (untuk program Notepad), sehingga lebih sedikit penekanan tombol yang diperlukan untuk menjalankan program:

Set-Alias ed notepad (to open Notepad with the ed command)
Set-Alias scr1 C:UsersIEUserDesktopscript1.ps1 (to start a script with the abbreviation scr1)

 

Tabel berikut berisi beberapa contoh dari cmdlet yang sering digunakan dan alias terkaitnya:

Alias Cmdlet Function
cd Set-Location Ubah direktori saat ini
dir Get-ChildItem Daftar semua item dalam folder
gi Get-Item Akses elemen tertentu
ps Get-Process Daftar semua proses
gsv Get-Service Daftar semua layanan yang diinstal
gm Get-Member Tampilkan semua properti dan metode suatu objek
clear Clear-Host Kosongkan host PowerShell

Struktur perintah PowerShell yang ketat dan mudah dipahami memungkinkan bekerja lebih efisien daripada di command prompt. Untuk menghemat lebih banyak waktu, kita dapat menggunakan tombol [Tab] untuk menyelesaikan cmdlet setengah tertulis secara otomatis. Dalam banyak kasus, program bahkan mengenali perintah yang diketik tidak lengkap.

Cmdlet dapat dieksekusi secara individual atau disalurkan bersama-sama sehingga output dari suatu objek dapat dibaca dan digunakan kembali oleh objek berikut. Untuk menambahkan dua cmdlet ke bagan yang sama, cukup gunakan “|” ikon. Dengan cara ini kita dapat, misalnya, membuat daftar semua proses yang tersedia dan pada saat yang sama mengurutkannya berdasarkan ID mereka:

Get-Process | Sort-Object ID 

Memeriksa layanan yang berjalan di PC dengan Powershell

Sebelum menerapkan solusi keamanan baru di jaringan, perlu memeriksa layanan mana yang sudah diinstal pada PC tertentu. Alat dasarnya adalah “Get-Service” cmdlet, yang mencantumkan semua layanan. kamu juga dapat menggunakan fungsi filter di PowerShell untuk hanya menampilkan sebagian hasil – misalnya, semua layanan yang berjalan. Ini berfungsi dengan cmdlet berikut:

Get-Service | Where-Object {$_.status -eq "running"}

Keluaran dari “Dapatkan Layanan” diteruskan ke “Where-object” . “Where-object” memfilter semua layanan berdasarkan statusnya (diwakili oleh variabel “$_.status” dan parameternya -eq “running”) dan mencantumkan layanan yang sedang berjalan. Jika perlu, kamu juga bisa jenis daftar yang telah difilter berdasarkan nama tampilan dengan menambahkan cmdlet lain ke pipa:

Get-Service | Where-Object {$_.status -eq "running"} | Sort-Object DisplayName

 

Mencari log kesalahan sistem dengan Powershell

Log peristiwa memberikan informasi kepada administrator sistem tentang pesan kesalahan dalam aplikasi, dalam sistem operasi, atau dalam fungsi keamanan perangkat. Menggunakan “Get-EventLog” perintah untuk lihat dan kelola log ini. Misalnya, Jika ingin melihat pesan kesalahan di tampilan acara “Sistem”, masukkan yang berikut ini:

Get-EventLog System | Where-Object {$_.entryType -Match "Error"}

Jika PowerShell mengeluarkan terlalu banyak hasil, dapat menggunakan “100” terbaru parameter untuk membatasi daftar ke 100 entri log sistem terbaru yang kemudian difilter untuk kesalahan:

Get-EventLog System -Newest 100 | Where-Object {$_.entryType -Match "Error"}

Anda bisa mendapatkan informasi rinci tentang pesan kesalahan individu jika meneruskan output dari pipa ini ke “Format-Daftar” cmdlet:

Get-EventLog System -Newest 100 | Where-Object {$_.entryType -Match "Error"} | Format-List

 

Manajemen jarak jauh dengan Powershell

Instrumentasi Manajemen Windows (WMI) menyediakan akses ke hampir semua pengaturan dan fungsi komputer Windows, menjadikannya alat paling penting untuk otomatisasi proses dan manajemen jarak jauh stasiun kerja digital. kamu juga dapat menerapkan “Get-WmiObject” cmdlet ke komputer jarak jauh, sehingga kamu juga dapat menggunakan Windows PowerShell sebagai alat manajemen sistem. Misalnya, jika memerlukan informasi kelas Win32_BIOS di komputer di jaringan (diwakili oleh parameter “-Nama komputer”), perintah berikut akan membantu kamu:

Get-WmiObject Win32_Bios -Computername

Atau bekerja dengan parameter “-Kelas” diikuti oleh jalur lengkap kelas:

Get-WmiObject -Rechnername -Class Win32_Service

Anda sekarang dapat mengakses pengaturan sistem internal komputer pihak ketiga dari jarak jauh. Contoh berikut menunjukkan cara mengambil metode layanan Windows Update Client untuk mengetahui cmdlet mana yang dapat digunakan untuk memulai, menghentikan, dan memulai ulang:

Get-WmiObject -Computername -Class Win32_Service -Filter "Name='wuauserv'"

Seperti yang terlihat, “Get-WmiObject –Computername” pertama-tama cari host yang diinginkan dan kemudian pilih “Win32_Service” kelas menggunakan “-Class” parameter. Klien Pembaruan Windows dengan singkatan “wuauserv” kemudian disaring dari layanan yang ada. Yang terkenal”Get-Member” cmdlet dan “-Type Method” parameter memberi kamu gambaran umum tentang semua metode untuk “wuauserv” yang memungkinkan untuk sepenuhnya mengontrol klien dari jarak jauh:

Get-WmiObject -Computername -Class Win32_Service -Filter "Name='wuauserv'" | Get-Member -Type Method
Exit mobile version