Menggunakan PowerShell untuk Pengguna Rumah - Panduan Pemula

Menggunakan PowerShell untuk Pengguna Rumah - Panduan Pemula

Siapa yang tidak berharap mereka boleh menjadi penyihir dan mengucapkan beberapa perkataan untuk mempunyai perkara ajaib berlaku? Nah, kami tidak dapat menunjukkan kepada anda bagaimana menjadi ahli sihir, tetapi kami dapat menunjukkan kepada anda bagaimana melakukan sihir komputer kecil.

Sekiranya anda mempunyai komputer Windows dengan Windows 7 di atasnya, anda mempunyai PowerShell. Juga, jika anda mempunyai komputer dengan Windows 7 di atasnya, sila kemas kini demi keselamatan.

Isi kandungan

    Buat pertama kalinya kita menggunakannya, kita akan menjalankannya sebagai pentadbir. Untuk melakukan ini, anda mesti terlebih dahulu mempunyai hak pentadbir di komputer anda. Di dalam anda Mula menu, klik kanan PowerShell Ise, kemudian klik pada Jalankan sebagai pentadbir.

    Anda mungkin mendapat Kawalan Akses Pengguna (UAC) Amaran Pop timbul bertanya jika anda pasti mahu melakukan ini. Klik Ya.

    Sekarang anda melihat IDE PowerShell. Panel atas tingkap (1) adalah panel skrip. Di sinilah anda akan menulis skrip anda. Panel bawah tingkap (2) adalah kawasan konsol. Apabila anda menguji skrip anda, anda akan melihat output di panel ini.

    Ini juga di mana anda akan melihat mesej ralat dan sebagainya yang akan membantu anda memperbaiki dan menjadikan skrip anda lebih baik. Panel di sebelah kanan tingkap (3) adalah perintah tambahan. Fikirkan ia sebagai kamus semua arahan PowerShell yang tersedia untuk anda.

    PowerShell ditetapkan untuk tidak menjalankan skrip selain daripada yang sudah menjadi sebahagian daripada Windows. Anda perlu mengubahnya supaya anda dapat menjalankan skrip anda sendiri.

    Dalam tetingkap skrip, salin dan tampal yang berikut:

    Set -executionPolicy -ExecutionPolicy Remotesigned

    The Set-executionpolicy Sebahagian daripadanya dipanggil cmdlet (Commandlet yang disebut). Cmdlet adalah perkara yang kuat. Fikirkan mereka sebagai arahan pendek yang anda boleh memberikan tingkap, dan tingkap akan pergi melakukan sekumpulan barangan yang lebih rumit untuk memenuhi arahan anda.

    Analogi akan memberitahu anak anda untuk membersihkan bilik mereka. Pendek dan ke titik. Sekiranya anak anda berpengalaman dalam pembersihan bilik, maka mereka akan pergi dan membuat katil mereka, meletakkan pakaian mereka di dalam bakul, menempuh mainan dan buku mereka, dan mungkin juga mengosongkan lantai. Mereka memahami bahawa cmdlet bersih-yourroom bermaksud semua itu.

    Di bahagian atas tingkap, anda akan melihat anak panah hijau. Klik pada itu untuk menjalankan arahan.

    The -ExecutionPolicy bahagian memberitahu Set-executionpolicy dasar apa yang hendak ditetapkan. Ia adalah parameter. Ia berkata, "Saya mahu anda bekerja dalam garis panduan ini dan secara khusus melakukan ini. Ia memberitahu ia untuk menggunakan dasar tertentu yang diperbaiki.

    The Remotesigned Polisi menyatakan bahawa PowerShell tidak boleh melaksanakan, atau dijalankan, apa -apa skrip yang dimuat turun dari Internet kecuali ia ditandatangani oleh penerbit yang dipercayai.

    Dengan cara bulatan, ia memberitahu PowerShell bahawa ia adalah baik untuk menjalankan skrip yang dibuat secara tempatan, kerana mereka tidak perlu ditandatangani oleh penerbit yang dipercayai jauh. Sekarang, skrip PowerShell anda akan dapat menjalankan skrip yang anda tulis di komputer anda.

    Mari lihat skrip untuk memadam fail sementara. Ia tidak begitu kuat atau menyeluruh seperti ccleaner, tetapi ccleaner datang dengan masalah tersendiri.

    Gunakan PowerShell untuk mewujudkan ruang pada cakera keras anda

    Kami akan memecahkan skrip ini, garis demi baris, jadi anda dapat melihat bagaimana ia berfungsi. Pada akhirnya, skrip akan ditunjukkan sepenuhnya supaya anda boleh menyalin dan menampalnya jika anda mahu.

    $ TempfileLocation = "c: \ users \ username \ appdata \ local \ temp \*"

    Apa -apa sahaja dengan tanda dolar di hadapannya adalah nama yang berubah -ubah. Fikirkan ia seperti dompet untuk meletakkan barangan berharga di. Dompet mengingatkan kita tentang tanda dolar, barang berharga seperti pemboleh ubah, jadi kita juga ingat. Kami mencipta dompet, atau pembolehubah, bernama $ Tempfilelocation. Tanda yang sama memberitahu PowerShell apa yang harus dimasukkan ke dalam pemboleh ubah itu.

    Dalam kes ini, kami meletakkan lokasi lokasi fail sementara Windows - C: \ users \ username \ appdata \ local \ temp \*. Kami melakukan ini kerana dua sebab; Ini adalah lokasi yang selalu selamat untuk memadam fail, dan kami akan menggunakannya untuk memberitahu PowerShell di mana ia mesti memadam fail.

    Di mana ia mengatakan nama pengguna di lokasi itu, swapnya untuk nama pengguna anda. Itulah nama pengguna yang anda gunakan untuk log masuk ke komputer anda. Asterisk (*) pada akhirnya adalah kad liar. Apa yang diwakilinya adalah segala -galanya dalam temp folder, kerana segala -galanya dalam folder temp adalah sementara dan kami mahu memadamkannya.

    Petikan berganda di sekitar lokasi juga penting. Yang memberitahu PowerShell bahawa apa yang ada di dalamnya ada rentetan. Fikirkan tali sebagai rentetan huruf dan watak. Sekiranya nombor biasa, kami tidak akan menggunakan sebut harga.

    $ Tempfile = get -childItem $ tempfileLocation -recurse

    Kami membuat pemboleh ubah lain. Kali ini kita akan menggunakan arahan untuk menghasilkan sesuatu untuk dimasukkan ke dalam $ Tempfile pembolehubah.

    Get-ChildItem 

    Perkara lain yang anda perhatikan mengenai cmdlet seperti Get-ChildItem adakah ia boleh dibaca sepenuhnya. Lihat bagaimana perkataan pertama adalah kata kerja? Cmdlet semua bermula dengan kata -kata tindakan, jadi anda segera mengetahui apa yang dilakukannya. Childitem adalah dua kata nama.

    Bahagian kedua cmdlet selalu akan memberitahu kami tentang apa yang akan digunakan oleh PowerShell. ChildItem bermaksud semua kanak -kanak lokasi induk. Ini seperti mengatakan mendapatkan semua fail yang ada dalam folder, dengan fail menjadi anak -anak dan folder menjadi ibu bapa.

    Apakah cmdlet yang mendapat barangan kanak -kanak? Segala -galanya dalam pemboleh ubah $ Tempfilelocation. PowerShell akan pergi ke lokasi yang kami masukkan ke dalam $ tempfilelocation lebih awal dan dapatkan semua barang kanak -kanak yang ada. Kemudian, ia akan memasukkannya ke dalam pembolehubah $ Tempfile.

    Jadi, apa dengan -Berulang bahagian? Itu menceritakan Get-ChildItem Untuk melalui semua perkara di lokasi tersebut. Jangan hanya mendapatkan fail dengan segera di dalam folder induk. Sekiranya terdapat folder dalam folder itu, dapatkan semua anak mereka juga, dan anak -anak mereka dan sebagainya. Kami akan mendapatkan mereka semua.

    $ TempFileCount = ($ tempFile).hitung

    Ya, kami mencipta pemboleh ubah ketiga yang dipanggil $ TempfileCount, Dan kami akan meletakkan nombor dalam pemboleh ubah itu. Di mana nombornya? Baik, ($ Tempfile).hitung akan membawa kita nombor itu. Anda mungkin tahu bahawa .kiraan bahagian akan melakukan pengiraan semua fail yang kami simpan dalam $ tempfile.

    Mengapa kita melakukan ini? Kebanyakannya kerana senang mengetahui berapa banyak fail yang tidak berguna.

    jika ($ tempfileCount -eq 0)

    Sekarang kami menyediakan pernyataan bersyarat. Anda dapat melihat bahawa ia bertanya 'jika'. Jika tidak? Sekiranya perkara dalam kurungan itu benar atau salah. Kurungan adalah penting, jika tidak, jika tidak tahu apa yang hendak dibandingkan. Di sini, ia bertanya sama ada nombor yang kami simpan $ TempfileCount sama dengan sifar.

    The -Pers adalah singkatan untuk sama. Ia adalah jenis pengendali perbandingan. Ia seperti memberitahu anak -anak anda, "Jika bilik anda bersih, hebat, kami akan melakukan sesuatu ..." Kenyataan ini mengatakan jika nombor yang disimpan dalam $ tempfileCount adalah sama -sama sifar lakukan perkara seterusnya.

    Write -host "Tidak ada fail dalam folder $ tempfileLocation" -foregroundcolor Green

    Itulah perkara yang akan berlaku jika $ TempfileCount adalah sifar. Kurungan keriting itu penting. Mereka memberitahu PowerShell untuk melakukan apa yang ada di dalamnya jika $ tempfileCount sama dengan sifar.

    Ia akan menulis kepada tuan rumah, atau skrin, "Tidak ada fail dalam folder C: \ Users \ username \ appdata \ local \ temp \*". Parameter pada akhir, -ForegroundColor memberitahu PowerShell untuk menjadikan teks hijau. Yang menjadikannya lebih mudah untuk membezakan dari mesej ralat yang biasanya merah.

    Lain

    Anda tahu apa maksudnya. Ini adalah, "bilik anda lebih baik bersih atau lain -lain ..." sebahagian daripada memeriksa jika anak anda membersihkan bilik mereka. Itulah yang akan berlaku jika $ TempfileCount tidak sifar.

    $ Tempfile | Keluarkan -item -whatif -confirm: $ false -recurse -force -warningAction silslycontinue -erroraction sillycontinue

    Ini mengatakan pergi ke lokasi semasa yang disimpan di $ Tempfile. Garis menegak selepas dipanggil paip. Ia berfungsi seperti paip kehidupan sebenar kerana ia memberitahu PowerShell untuk menyalurkan kandungan $ tempfile ke dalam cmdlet, seolah-olah air yang disalurkan ke mesin basuh. Kemudian cmdlet Membuang-item Adakah apa yang dikatakannya; ia menghilangkan apa sahaja di lokasi tersebut.

    The -Whatif Parameter sangat penting pada peringkat ini. Ia memberitahu PowerShell untuk menjalankan arahan, tetapi hanya mencubanya, jangan mengeluarkan apa -apa. Tunjukkan saja kepada kami apa yang akan berlaku jika kami benar -benar melakukan ini.

    Ini membolehkan anda menguji arahan tanpa mengubah apa -apa di komputer anda. Tinggalkan -Whatif di sana sehingga anda selesa bahawa skrip akan melakukan apa yang anda mahu lakukan dan tidak ada yang lain. Kemudian padamkannya dan skrip akan melakukan tugasnya.

    Parameter -Sahkan: $ False Hentikan skrip daripada bertanya jika anda benar -benar mahu memadam fail. Awak tahu tak -Berulang tidak. -Kuasa bermaksud memadam perkara itu tidak kira apa. -Amaran ditetapkan ke Silentscontinue.

    Ini menghalang skrip daripada memberi anda amaran tentang apa yang anda padamkan. -ErrorAction ditetapkan ke Silentscontinue Jadi jika ada apa -apa kesilapan dalam proses, ia hanya terus mengamuk.

    Sekarang kita berada di baris terakhir.

    Tulis -tuan rumah "dibersihkan $ tempfileCount Files dalam folder $ tempfileLocation" -foregroundcolor Green

    Seperti Tulis-tuan rumah Adakah kali pertama, ia akan mengeluarkan ayat berikut, jadi kita tahu apa yang telah berlaku. Ia akan memberitahu kami berapa banyak fail yang dipadam dari folder yang hanya diproses dan melakukannya dengan hijau untuk memudahkannya.

    Mari lihat skrip sama sekali:

    $ TempfileLocation = "c: \ users \ guymcd \ appdata \ local \ temp \*"
    $ Tempfile = get -childItem $ tempfileLocation -recurse
    $ TempFileCount = ($ tempFile).hitung
    jika ($ tempfileCount -eq "0")
    Tulis -tuan rumah "Tidak ada fail dalam folder $ tempfileLocation" - ForegroundColor Green

    Lain
    $ Tempfile | Keluarkan -item -confirm: $ false -recurse -force -warningAction sillycontinue -erroraction sillycontinue
    HOST -HOST "dibersihkan $ tempfileCount fail dalam folder $ tempfileLocation" -foregroundcolor Green

    Anda boleh menyalin dan menampalnya ke dalam kuasa anda dan menyimpannya sebagai sesuatu seperti Padam-TemararyFiles.PS1. Anda juga boleh berpegang dengan konvensyen penamaan cmdlet sekarang yang anda faham.

    Sekiranya kod itu tidak berfungsi untuk anda atas sebab tertentu, anda juga boleh memuat turun skrip PowerShell yang kami buat dan hanya menjalankannya. Hanya unzip terlebih dahulu untuk melihat fail skrip.

    Bila-bila masa anda mahu menjalankan skrip ini, klik kanan di atasnya dan pilih Berlari dengan PowerShell. Konsol PowerShell akan muncul selama satu atau dua tahun, sementara skrip anda melakukan perkara itu, dan kemudian akan hilang jika tidak ada kesilapan.

    Di mana saya boleh mempelajari lebih banyak powerShell?

    Yang kelihatan seperti banyak! Untuk skrip PowerShell pertama anda sedikit. Sekiranya anda telah membuatnya sejauh ini, memuji diri anda. Anda banyak belajar hari ini, tetapi sekarang anda ingin mengetahui lebih lanjut. Itu hebat!

    Terdapat banyak sumber di internet untuk mengetahui lebih lanjut mengenai PowerShell. Tempat yang baik untuk memulakan adalah artikel kami, "menghasilkan senarai program permulaan melalui baris perintah atau PowerShell". Kemudian lihat sumber -sumber lain ini:

    • Bermula dengan Microsoft PowerShell - Microsoft Virtual Academy
    • Tutorial PowerShell - TutorialSpoint.com