Bagikan melalui


about_Parameters

Deskripsi singkat

Menjelaskan cara bekerja dengan parameter perintah di PowerShell.

Deskripsi panjang

Sebagian besar perintah PowerShell, seperti cmdlet, fungsi, dan skrip, mengandalkan parameter untuk memungkinkan pengguna memilih opsi atau memberikan input. Parameter mengikuti nama perintah dan memiliki formulir berikut:

-<parameter_name> <parameter_value>
-<parameter_name>:<parameter_value>

Nama parameter didahului oleh tanda hubung (-), yang memberi sinyal ke PowerShell bahwa kata yang mengikuti tanda hubung adalah nama parameter. Nama parameter dan nilai dapat dipisahkan oleh spasi atau karakter titik dua. Beberapa parameter tidak memerlukan atau menerima nilai parameter. Parameter lain memerlukan nilai, tetapi tidak memerlukan nama parameter dalam perintah.

Jenis parameter dan persyaratan untuk parameter tersebut bervariasi. Untuk menemukan informasi tentang parameter perintah, gunakan Get-Help cmdlet . Misalnya, untuk menemukan informasi tentang parameter Get-ChildItem cmdlet, ketik:

Get-Help Get-ChildItem

Untuk menemukan informasi tentang parameter skrip, gunakan jalur lengkap ke file skrip. Contohnya:

Get-Help $HOME\Documents\Scripts\Get-Function.ps1

Get-Help Cmdlet mengembalikan berbagai detail tentang perintah, termasuk deskripsi, sintaks perintah, informasi tentang parameter, dan contoh yang menunjukkan cara menggunakan parameter dalam perintah.

Anda juga dapat menggunakan parameter Get-Help Parameter cmdlet untuk menemukan informasi tentang parameter tertentu. Atau, Anda dapat menggunakan parameter Parameter dengan nilai karakter kartubebas ( * ) untuk menemukan informasi tentang semua parameter perintah. Misalnya, perintah berikut mendapatkan informasi tentang semua parameter Get-Member cmdlet:

Get-Help Get-Member -Parameter *

Nilai parameter default

Parameter opsional memiliki nilai default, yaitu nilai yang digunakan atau diasumsikan ketika parameter tidak ditentukan dalam perintah.

Misalnya, nilai default parameter ComputerName dari banyak cmdlet adalah nama komputer lokal. Akibatnya, nama komputer lokal digunakan dalam perintah kecuali parameter ComputerName ditentukan.

Untuk menemukan nilai parameter default, lihat topik bantuan untuk cmdlet. Deskripsi parameter harus menyertakan nilai default.

Anda juga dapat mengatur nilai default kustom untuk parameter cmdlet atau fungsi tingkat lanjut apa pun. Untuk informasi tentang mengatur nilai default kustom, lihat about_Parameters_Default_Values.

Tabel atribut parameter

Saat Anda menggunakan parameter Lengkap, Parameter, atau Online dari Get-Help cmdlet, Get-Help menampilkan tabel atribut parameter dengan informasi terperinci tentang parameter .

Informasi ini mencakup detail yang perlu Anda ketahui untuk menggunakan parameter . Misalnya, topik bantuan untuk Get-ChildItem cmdlet menyertakan detail berikut tentang parameter Jalurnya:

-Path <string[]>
    Specifies a path of one or more locations. Wildcard characters are
    permitted. The default location is the current directory (.).

Required?                    false
Position?                    0
Default value                Current directory
Accept pipeline input?       true (ByValue, ByPropertyName)
Accept wildcard characters?  true

Informasi parameter mencakup sintaks parameter, deskripsi parameter, dan atribut parameter. Bagian berikut menjelaskan atribut parameter.

Parameter Diperlukan

Pengaturan ini menunjukkan apakah parameter wajib, yaitu, apakah semua perintah yang menggunakan cmdlet ini harus menyertakan parameter ini. Saat nilai adalah True dan parameter hilang dari perintah, PowerShell meminta nilai untuk parameter tersebut.

Posisi Parameter

Position Jika pengaturan diatur ke bilangan bulat non-negatif, nama parameter tidak diperlukan. Jenis parameter ini disebut sebagai parameter posisional, dan angka menunjukkan posisi di mana parameter harus muncul dalam kaitannya dengan parameter posisi lainnya. Parameter bernama dapat dicantumkan di posisi apa pun setelah nama cmdlet. Jika Anda menyertakan nama parameter untuk parameter posisi, parameter dapat dicantumkan di posisi apa pun setelah nama cmdlet.

Misalnya, Get-ChildItem cmdlet memiliki parameter Path dan Exclude. Pengaturan Position untuk Jalur adalah 0, yang berarti bahwa itu adalah parameter posisi. Position Pengaturan untuk Kecualikan diberi nama.

Ini berarti bahwa Jalur tidak memerlukan nama parameter, tetapi nilai parameternya harus menjadi nilai parameter pertama atau hanya yang tidak disebutkan namanya dalam perintah. Namun, karena parameter Kecualikan adalah parameter bernama, Anda dapat menempatkannya di posisi apa pun dalam perintah.

Sebagai hasil dari Position pengaturan untuk kedua parameter ini, Anda dapat menggunakan salah satu perintah berikut:

Get-ChildItem -Path c:\techdocs -Exclude *.ppt
Get-ChildItem c:\techdocs -Exclude *.ppt
Get-ChildItem -Exclude *.ppt -Path c:\techdocs
Get-ChildItem -Exclude *.ppt c:\techdocs

Jika Anda menyertakan parameter posisi lain tanpa menyertakan nama parameter, parameter tersebut harus ditempatkan dalam urutan yang ditentukan oleh Position pengaturan.

Jenis Parameter

Pengaturan ini menentukan jenis Microsoft .NET Framework dari nilai parameter. Misalnya, jika jenisnya adalah Int32, nilai parameter harus berupa bilangan bulat. Jika jenisnya adalah string, nilai parameter harus berupa string karakter. Jika string berisi spasi, nilai harus diapit dalam tanda kutip, atau spasi harus didahului oleh karakter escape (`).

Nilai Default

Pengaturan ini menentukan nilai yang akan diasumsikan parameter jika tidak ada nilai lain yang disediakan. Misalnya, nilai default parameter Jalur sering kali merupakan direktori saat ini. Parameter yang diperlukan tidak pernah memiliki nilai default. Untuk banyak parameter opsional, tidak ada default karena parameter tidak berpengaruh jika tidak digunakan.

Menerima Beberapa Nilai

Pengaturan ini menunjukkan apakah parameter menerima beberapa nilai parameter. Saat parameter menerima beberapa nilai, Anda dapat mengetik daftar yang dipisahkan koma sebagai nilai parameter dalam perintah, atau menyimpan daftar yang dipisahkan koma (array) dalam variabel, lalu menentukan variabel sebagai nilai parameter.

Misalnya, parameter Get-Service Nama cmdlet menerima beberapa nilai. Perintah berikut ini valid:

Get-Service -Name winrm, netlogon
$s = "winrm", "netlogon"
Get-Service -Name $s

Menerima Input Alur

Pengaturan ini menunjukkan apakah Anda dapat menggunakan operator alur (|) untuk mengirim nilai ke parameter .

Value                    Description
-----                    -----------
False                    Indicates that you cannot pipe a value to the
                         parameter.

True (by Value)          Indicates that you can pipe any value to the
                         parameter, just so the value has the .NET
                         Framework type specified for the parameter or the
                         value can be converted to the specified .NET
                         Framework type.

Saat parameter adalah "True (menurut Nilai)", PowerShell mencoba mengaitkan nilai piped apa pun dengan parameter tersebut sebelum mencoba metode lain untuk menginterpretasikan perintah.

True (by Property Name)  Indicates that you can pipe a value to the
                         parameter, but the .NET Framework type of the
                         parameter must include a property with the same
                         name as the parameter.

Misalnya, Anda dapat menyalurkan nilai ke parameter Nama hanya saat nilai memiliki properti yang disebut Nama.

Catatan

Parameter jenis yang menerima input alur (by Value) atau (by PropertyName) memungkinkan penggunaan blok skrip yang tertunda-ikat pada parameter .

Blok skrip yang tertunda dijalankan secara otomatis selama ParameterBinding. Hasilnya terikat ke parameter . Pengikatan penundaan tidakberfungsi untuk parameter yang didefinisikan sebagai jenis ScriptBlock atau System.Object, blok skrip diteruskan tanpa dipanggil.

Anda dapat membaca tentang blok skrip yang tertunda di sini about_Script_Blocks.md

Menerima Karakter KartuBebas

Pengaturan ini menunjukkan apakah nilai parameter dapat berisi karakter kartubebas sehingga nilai parameter dapat dicocokkan dengan lebih dari satu item yang ada dalam kontainer target.

Parameter Umum

Parameter umum adalah parameter yang dapat Anda gunakan dengan cmdlet apa pun. Untuk informasi selengkapnya tentang parameter umum, lihat about_CommonParameters.

Lihat juga