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 tidak berfungsi 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.