Geek School: Pelajari Cara Mengotomatiskan Windows dengan PowerShell

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 1

Dalam edisi Geek School ini, kami akan membantu Anda memahami bahasa skrip PowerShell yang kuat yang dibangun langsung ke dalam Windows, dan sangat berguna untuk diketahui di lingkungan TI.

Meskipun seri ini tidak terstruktur seputar ujian, mempelajari PowerShell adalah salah satu hal terpenting yang dapat Anda lakukan sebagai administrator jaringan, jadi jika ada satu hal yang ingin Anda pelajari untuk membantu karir TI Anda, ini dia. Selain itu, ini sangat menyenangkan.



pengantar

PowerShell adalah alat otomatisasi paling kuat yang ditawarkan Microsoft, dan ini adalah shell dan bahasa skrip.

Harap dicatat bahwa seri ini didasarkan pada PowerShell 3, yang dikirimkan bersama Windows 8 dan Server 2012. Jika Anda menjalankan Windows 7, unduh pembaruan PowerShell 3 sebelum melanjutkan.

Temui Konsol dan ISE

Ada dua cara berinteraksi dengan PowerShell di luar kotak, Konsol dan Lingkungan Skrip Terpadu – juga dikenal sebagai ISE. ISE telah jauh lebih baik dari versi mengerikan yang dikirimkan bersama PowerShell 2 dan dapat dibuka dengan menekan kombinasi keyboard Win + R untuk membuka kotak run, lalu mengetik powershell_ise dan menekan enter.

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 2

Seperti yang Anda lihat, ISE menampilkan tampilan terpisah sehingga Anda dapat dengan cepat membuat skrip sambil tetap dapat melihat hasilnya di bagian bawah ISE. Bagian bawah ISE, tempat hasil skrip Anda dicetak, juga dapat digunakan sebagai prompt REPL – seperti halnya command prompt. ISE v3 akhirnya menambahkan dukungan untuk intellisense baik di panel skrip maupun konsol interaktif.

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 3

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 4

Atau, Anda dapat berinteraksi dengan PowerShell menggunakan Konsol PowerShell, yang akan saya gunakan untuk sebagian besar seri ini. Konsol PowerShell berperilaku seperti prompt perintah - Anda cukup memasukkan perintah dan mengeluarkan hasilnya. Untuk membuka Windows PowerShell Console, tekan lagi kombinasi keyboard Win + R untuk membuka kotak run dan ketik powershell lalu tekan enter.

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 5

Permintaan REPL seperti ini luar biasa untuk kepuasan instan: Anda memasukkan perintah dan Anda mendapatkan hasil. Meskipun Konsol tidak menawarkan intellisense, ia menawarkan sesuatu yang disebut penyelesaian tab yang fungsinya hampir sama – cukup mulai mengetik perintah dan tekan tab untuk menelusuri kemungkinan kecocokan.

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 6

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 7

Menggunakan Sistem Bantuan

Di versi PowerShell sebelumnya, file bantuan disertakan saat Anda menginstal Windows. Ini adalah solusi yang baik untuk sebagian besar tetapi meninggalkan kami dengan masalah yang signifikan. Ketika tim bantuan PowerShell harus berhenti mengerjakan file bantuan, pengembang PowerShell masih sibuk mengkode dan membuat perubahan. Ini berarti bahwa ketika PowerShell dikirimkan, file bantuan salah karena tidak berisi perubahan baru yang telah dibuat pada kode. Untuk mengatasi masalah ini, PowerShell 3 hadir tanpa file bantuan di luar kotak dan menyertakan sistem bantuan yang dapat diperbarui. Ini berarti sebelum Anda melakukan apa pun, Anda ingin mengunduh file bantuan terbaru. Anda dapat melakukannya dengan membuka Konsol PowerShell dan menjalankan:

Perbarui-Bantuan

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 8

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 9

Selamat menjalankan perintah PowerShell pertama Anda! Yang benar adalah bahwa perintah Update-Help memiliki lebih banyak opsi daripada sekadar menjalankannya, dan untuk melihatnya, kita akan ingin melihat bantuan untuk perintah tersebut. Untuk melihat bantuan untuk sebuah perintah, Anda cukup meneruskan nama perintah yang Anda inginkan bantuannya ke parameter Name dari perintah Get-Help, misalnya:

Dapatkan-Bantuan –Pembaruan Nama-Bantuan

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 10

Anda mungkin bertanya-tanya bagaimana menafsirkan semua teks itu, maksud saya mengapa ada dua banyak informasi di bawah bagian sintaks dan mengapa ada begitu banyak tanda kurung di semua tempat? Hal pertama yang pertama: alasan ada dua blok informasi di bawah bagian sintaks adalah karena keduanya mewakili cara yang berbeda untuk menjalankan perintah. Ini secara teknis disebut set parameter dan Anda hanya dapat menggunakan satu per satu (Anda tidak dapat mencampur parameter dari set yang berbeda). Pada tangkapan layar di atas Anda dapat melihat bahwa set parameter atas memiliki parameter SourcePath sedangkan bagian bawah tidak. Alasannya karena Anda akan menggunakan set parameter teratas (yang menyertakan SourcePath) jika Anda memperbarui file bantuan dari komputer lain di jaringan Anda yang telah mengunduhnya, sementara Anda tidak perlu menentukan jalur sumber jika Anda hanya ingin mengambil file terbaru dari Microsoft.

Untuk menjawab pertanyaan kedua, ada sintaks tertentu yang mengikuti file bantuan dan ini dia:

  • Tanda kurung siku di sekitar nama parameter dan tipenya berarti itu adalah parameter opsional dan perintah akan berfungsi dengan baik tanpanya.
  • Tanda kurung siku di sekitar nama parameter berarti bahwa parameter tersebut adalah parameter posisi.
  • Hal di sebelah kanan parameter dalam tanda kurung siku memberi tahu Anda tipe data yang diharapkan parameter.

Meskipun Anda harus belajar membaca sintaks file bantuan, jika Anda tidak yakin tentang parameter tertentu, tambahkan saja –Penuh di akhir perintah get help Anda dan gulir ke bawah ke bagian parameter, di mana ia akan memberi tahu Anda lebih banyak tentang masing-masing parameter.

Dapatkan-Bantuan –Pembaruan Nama-Bantuan –Penuh

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 11

Hal terakhir yang perlu Anda ketahui tentang sistem bantuan adalah bagaimana Anda dapat menggunakannya untuk menemukan perintah, yang sebenarnya sangat mudah. Anda lihat, PowerShell menerima wildcard hampir di mana saja, jadi menggunakannya bersama dengan perintah Get-Help memungkinkan Anda menemukan perintah dengan mudah. Misalnya, saya mencari perintah yang berhubungan dengan Layanan Windows:

Dapatkan-Bantuan –Nama *layanan*

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 12

Tentu, semua informasi ini mungkin tidak berguna, tapi percayalah, luangkan waktu dan pelajari cara menggunakan sistem bantuan. Itu sangat berguna sepanjang waktu, bahkan untuk skrip tingkat lanjut yang telah melakukan ini selama bertahun-tahun.

Keamanan

Ini tidak akan menjadi pengantar yang tepat tanpa menyebutkan keamanan. Kekhawatiran terbesar bagi tim PowerShell adalah bahwa PowerShell menjadi titik serangan terbaru dan terhebat untuk skrip kiddies. Mereka telah menerapkan beberapa langkah keamanan untuk memastikan hal ini tidak terjadi, jadi mari kita lihat mereka.

Bentuk perlindungan paling dasar berasal dari fakta bahwa ekstensi file PS1 (ekstensi yang digunakan untuk menunjukkan skrip PowerShell) tidak terdaftar dengan host PowerShell, sebenarnya terdaftar dengan Notepad. Itu berarti jika Anda mengklik dua kali pada file, itu akan terbuka dengan notepad alih-alih berjalan.

Kedua, Anda tidak dapat menjalankan skrip dari shell hanya dengan mengetikkan nama skrip, Anda harus menentukan path lengkap ke skrip. Jadi jika Anda ingin menjalankan skrip pada drive C Anda, Anda harus mengetik:

C: unme.ps1

Atau jika Anda sudah berada di root drive C, Anda dapat menggunakan yang berikut ini:

. unme.ps1

Terakhir, PowerShell memiliki sesuatu yang disebut Kebijakan Eksekusi, yang menghentikan Anda dari menjalankan skrip lama apa pun. Faktanya, secara default, Anda tidak dapat menjalankan skrip apa pun dan perlu mengubah kebijakan eksekusi jika Anda ingin diizinkan menjalankannya. Ada 4 Kebijakan Eksekusi yang terkenal:

  • Dibatasi: Ini adalah konfigurasi default di PowerShell. Pengaturan ini berarti bahwa tidak ada skrip yang dapat dijalankan, terlepas dari tanda tangannya. Satu-satunya hal yang dapat dijalankan di PowerShell dengan pengaturan ini adalah perintah individual.
  • AllSigned: Pengaturan ini memungkinkan skrip berjalan di PowerShell. Skrip harus memiliki tanda tangan digital terkait dari penerbit tepercaya. Akan ada prompt sebelum Anda menjalankan skrip dari penerbit tepercaya.
  • RemoteSigned: Pengaturan ini memungkinkan skrip dijalankan, tetapi mengharuskan skrip dan file konfigurasi yang diunduh dari Internet memiliki tanda tangan digital terkait dari penerbit tepercaya. Skrip yang dijalankan dari komputer lokal tidak perlu ditandatangani. Tidak ada petunjuk sebelum menjalankan skrip.
  • Tidak dibatasi: Ini memungkinkan skrip yang tidak ditandatangani untuk dijalankan, termasuk semua skrip dan file konfigurasi yang diunduh dari Internet. Ini akan mencakup file dari Outlook dan Messenger. Risiko di sini adalah menjalankan skrip tanpa tanda tangan atau keamanan apa pun. Kami merekomendasikan bahwa Anda tidak pernah kami pengaturan ini.

Untuk melihat apa Kebijakan Eksekusi Anda saat ini diatur, buka Konsol PowerShell dan ketik:

Get-ExecutionPolicy

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 13

Untuk kursus ini dan sebagian besar situasi lainnya, Kebijakan RemoteSigned adalah yang terbaik, jadi lanjutkan dan ubah kebijakan Anda menggunakan yang berikut ini.

Catatan: Ini perlu dilakukan dari Konsol PowerShell yang ditinggikan.

Set-ExecutionPolicy RemoteSigned

geek-school-belajar-cara-mengotomatiskan-jendela-dengan-powershell foto 14

Itu saja untuk kali ini teman-teman, sampai jumpa besok untuk kesenangan PowerShell lainnya.


Penafian: Istilah yang tepat untuk perintah PowerShell adalah cmdlet, dan mulai sekarang kita akan menggunakan terminologi yang benar ini. Rasanya lebih tepat untuk memanggil mereka perintah untuk pengantar ini.


Jika Anda memiliki pertanyaan, Anda dapat men-tweet saya @taybgibb, atau tinggalkan komentar.

Lebih banyak cerita

Apakah Peramban Berbasis Teks Mengurangi Lalu Lintas Jaringan?

Tidak ada keraguan bahwa halaman web saat ini penuh dengan konten yang kaya dan menggunakan lebih banyak bandwidth untuk memuat sepenuhnya, tetapi apakah menggunakan browser berbasis teks daripada yang berbasis GUI membuat perbedaan yang signifikan dalam mengurangi lalu lintas jaringan? Postingan SuperUser Q&A hari ini memiliki jawaban atas pertanyaan pembaca yang penasaran

Geek Trivia: Makhluk Berkaki Dua Tercepat Di Bumi Adalah?

Pikirkan Anda tahu jawabannya? Klik untuk melihat apakah Anda benar!

Geek Trivia: Duct Tape Awalnya Diciptakan Untuk Menyegel?

Pikirkan Anda tahu jawabannya? Klik untuk melihat apakah Anda benar!

Bagaimana Saya Dapat Menonton Video iPhone/iPad Saya melalui Chromecast?

Jika Anda memiliki perangkat iOS dan Chromecast, pemain besar semuanya baik-baik saja (seperti Netflix) tetapi ketika datang untuk mengalirkan konten lokal di perangkat Anda ke Chromecast, itu sedikit merepotkan. Ikut serta saat kami membantu sesama pembaca melemparkan konten iPad lokal mereka ke TV.

Geek Trivia: Game Non-Bundled Terlaris Untuk Platform Game Boy Apakah?

Pikirkan Anda tahu jawabannya? Klik untuk melihat apakah Anda benar!

Geek Trivia: Game Role-Playing Konsol Pertama?

Pikirkan Anda tahu jawabannya? Klik untuk melihat apakah Anda benar!

Cegah Windows Meminta Kata Sandi saat Bangun dari Tidur/Siaga

Jika Anda telah mengonfigurasi Windows untuk secara otomatis memasukkan Anda daripada harus memasukkan kata sandi, Anda mungkin merasa terganggu karena Anda masih perlu memasukkan kata sandi saat PC Anda keluar dari mode tidur. Inilah perbaikan cepatnya.

Mengapa Anda Mungkin Tidak Ingin Membayar Ekstra untuk CPU yang Lebih Cepat di Laptop atau Tablet Anda

Saat Anda membeli laptop atau tablet baru, Anda sering kali dapat menyesuaikannya dengan membayar ekstra untuk CPU yang lebih cepat. Tapi ini mungkin bukan ide yang bagus — CPU kelas atas mungkin lebih cocok untuk perangkat!

Geek Trivia: Sistem Pendidikan Wajib Universal Pertama Ditemukan?

Pikirkan Anda tahu jawabannya? Klik untuk melihat apakah Anda benar!

Jumpshare adalah Cara Super Mudah untuk Berbagi File Secara Online

Saat ini, Anda dapat berbagi file menggunakan semua penyedia penyimpanan cloud yang berbeda seperti Dropbox dan OneDrive, tetapi jika semua yang Anda inginkan adalah cara super mudah untuk berbagi file dengan orang lain, Jumpshare mungkin patut dicoba.