New-Item
Membuat item baru.
Sintaks
New-Item
[-Path] <String[]>
[-ItemType <String>]
[-Value <Object>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-Item
[[-Path] <String[]>]
-Name <String>
[-ItemType <String>]
[-Value <Object>]
[-Force]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-Item
[-Path] <string[]>
-ConnectionURI <uri>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-OptionSet <hashtable>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <string>]
[-SessionOption <SessionOption>]
[-Port <int>]
[<CommonParameters>]
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-OptionSet <hashtable>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <string>]
[-SessionOption <SessionOption>]
[-ApplicationName <string>]
[-Port <int>]
[-UseSSL]
[<CommonParameters>]
New-Item
[-Path] <string[]>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
Deskripsi
New-Item
Cmdlet membuat item baru dan menetapkan nilainya. Jenis item yang dapat dibuat bergantung pada lokasi item. Misalnya, dalam sistem file, New-Item
membuat file dan folder. Dalam registri, New-Item
membuat kunci dan entri registri.
New-Item
juga dapat mengatur nilai item yang dibuatnya. Misalnya, saat membuat file baru, New-Item
dapat menambahkan konten awal ke file.
Contoh
Contoh 1: Membuat file di direktori saat ini
Perintah ini membuat file teks yang diberi nama "testfile1.txt" di direktori saat ini. Titik ('.') dalam nilai parameter Jalur menunjukkan direktori saat ini. Teks yang dikutip yang mengikuti parameter Nilai ditambahkan ke file sebagai konten.
New-Item -Path . -Name "testfile1.txt" -ItemType "file" -Value "This is a text string."
Contoh 2: Membuat direktori
Perintah ini membuat direktori bernama "Logfiles" di C:
drive. Parameter ItemType menentukan bahwa item baru adalah direktori, bukan file atau objek sistem file lainnya.
New-Item -Path "c:\" -Name "logfiles" -ItemType "directory"
Contoh 3: Membuat profil
Perintah ini membuat profil PowerShell di jalur yang ditentukan oleh $profile
variabel.
Anda dapat menggunakan profil untuk mengkustomisasi PowerShell. $profile
adalah variabel otomatis (bawaan) yang menyimpan jalur dan nama file profil "CurrentUser/CurrentHost". Secara default, profil tidak ada, meskipun PowerShell menyimpan jalur dan nama file untuknya.
Dalam perintah ini, $profile
variabel mewakili jalur file. Parameter ItemType menentukan bahwa perintah membuat file. Parameter Force memungkinkan Anda membuat file di jalur profil, bahkan ketika direktori di jalur tidak ada.
Setelah membuat profil, Anda dapat memasukkan alias, fungsi, dan skrip di profil untuk menyesuaikan shell Anda.
Untuk informasi selengkapnya, lihat about_Automatic_Variables dan about_Profiles.
New-Item -Path $profile -ItemType "file" -Force
Contoh 4: Membuat direktori di direktori lain
Contoh ini membuat direktori Skrip baru di direktori "C:\PS-Test".
Nama item direktori baru, "Skrip", disertakan dalam nilai parameter Jalur , alih-alih ditentukan dalam nilai Nama. Seperti yang ditunjukkan oleh sintaksis, salah satu formulir perintah valid.
New-Item -ItemType "directory" -Path "c:\ps-test\scripts"
Contoh 5: Membuat beberapa file
Contoh ini membuat file di dua direktori yang berbeda. Karena Path mengambil beberapa string, Anda dapat menggunakannya untuk membuat beberapa item.
New-Item -ItemType "file" -Path "c:\ps-test\test.txt", "c:\ps-test\Logs\test.log"
Contoh 6: Menggunakan kartubebas untuk membuat file di beberapa direktori
New-Item
Cmdlet mendukung kartubebas dalam parameter Jalur. Perintah berikut membuat temp.txt
file di semua direktori yang ditentukan oleh kartubebas dalam parameter Jalur .
Get-ChildItem -Path C:\Temp\
Directory: C:\Temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 5/15/2019 6:45 AM 1 One
d----- 5/15/2019 6:45 AM 1 Two
d----- 5/15/2019 6:45 AM 1 Three
New-Item -Path C:\Temp\* -Name temp.txt -ItemType File | Select-Object FullName
FullName
--------
C:\Temp\One\temp.txt
C:\Temp\Three\temp.txt
C:\Temp\Two\temp.txt
Get-ChildItem
Cmdlet menunjukkan tiga direktori di C:\Temp
bawah direktori. Menggunakan kartubebas New-Item
cmdlet membuat temp.txt
file di semua direktori di bawah direktori saat ini. New-Item
Cmdlet menghasilkan item yang Anda buat, yang disalurkan untuk Select-Object
memverifikasi jalur file yang baru dibuat.
Contoh 7: Membuat tautan simbolis ke file atau folder
Contoh ini membuat tautan simbolis ke file Notice.txt di folder saat ini.
$link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt
$link | Select-Object LinkType, Target
LinkType Target
-------- ------
SymbolicLink {.\Notice.txt}
Dalam contoh ini, Target adalah alias untuk parameter Nilai . Target tautan simbolis bisa menjadi jalur relatif. Sebelum PowerShell v6.2, target harus merupakan jalur yang sepenuhnya memenuhi syarat.
Dimulai di PowerShell 7.1, Anda sekarang dapat membuat ke SymbolicLink ke folder di Windows menggunakan jalur relatif.
Contoh 8: Gunakan parameter -Force untuk mencoba membuat ulang folder
Contoh ini membuat folder dengan file di dalamnya. Kemudian, upaya untuk membuat folder yang sama menggunakan -Force
. Ini tidak akan menimpa folder tetapi hanya mengembalikan objek folder yang ada dengan file yang dibuat utuh.
PS> New-Item -Path .\TestFolder -ItemType Directory
PS> New-Item -Path .\TestFolder\TestFile.txt -ItemType File
PS> New-Item -Path .\TestFolder -ItemType Directory -Force
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 5/1/2020 8:03 AM TestFolder
PS> Get-ChildItem .\TestFolder\
Directory: C:\TestFolder
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/1/2020 8:03 AM 0 TestFile.txt
Contoh 9: Gunakan parameter -Force untuk menimpa file yang ada
Contoh ini membuat file dengan nilai lalu membuat ulang file menggunakan -Force
. Ini menimpa file yang ada, seperti yang Anda lihat dengan properti panjang.
PS> New-Item ./TestFile.txt -ItemType File -Value 'This is just a test file'
Directory: C:\Source\Test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/1/2020 8:32 AM 24 TestFile.txt
New-Item ./TestFile.txt -ItemType File -Force
Directory: C:\Source\Test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/1/2020 8:32 AM 0 TestFile.txt
Catatan
Saat menggunakan New-Item
dengan -Force
sakelar untuk membuat kunci registri, perintah akan bertingkah sama seperti saat menimpa file. Jika kunci registri sudah ada, kunci dan semua properti dan nilai akan ditimpa dengan kunci registri kosong.
Parameter
-ApplicationName
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan nama aplikasi dalam koneksi. Nilai default parameter ApplicationName adalah WSMAN.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Authentication
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan mekanisme autentikasi yang akan digunakan di server.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | AuthenticationMechanism |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CertificateThumbprint
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan sertifikat kunci publik digital (X509) dari akun pengguna yang memiliki izin untuk melakukan tindakan WSMan ini. Masukkan thumbprint sertifikat sertifikat.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Confirm
Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.
Jenis: | SwitchParameter |
Alias: | cf |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-ConnectionURI
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan titik akhir koneksi untuk WSMan.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | Uri |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Credential
Catatan
Parameter ini tidak didukung oleh penyedia apa pun yang diinstal dengan PowerShell. Untuk meniru pengguna lain atau meningkatkan kredensial Anda saat menjalankan cmdlet ini, gunakan Invoke-Command
.
Jenis: | PSCredential |
Position: | Named |
Nilai default: | Current user |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Force
Memaksa cmdlet ini untuk membuat item yang menulis di atas item baca-saja yang ada. Implementasi bervariasi dari penyedia ke penyedia. Bahkan menggunakan parameter Force , cmdlet tidak dapat mengambil alih pembatasan keamanan.
Dimulai di PowerShell 7.4, parameter ini juga memungkinkan Anda untuk menimpa Persimpangan yang ada. Sebelumnya, ini akan gagal dengan kesalahan "tidak dapat dihapus karena tidak kosong".
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-ItemType
Menentukan tipe item baru yang ditentukan penyedia. Nilai yang tersedia dari parameter ini bergantung pada penyedia saat ini yang Anda gunakan.
Jika lokasi Anda berada dalam FileSystem
drive, nilai berikut diizinkan:
- File
- Direktori
- SymbolicLink
- Persimpangan
- HardLink
Catatan
Membuat SymbolicLink
jenis pada Windows memerlukan elevasi sebagai administrator. Namun, Windows 10 (build 14972 atau yang lebih baru) dengan Mode Pengembang diaktifkan tidak lagi memerlukan elevasi yang membuat tautan simbolis.
Certificate
Dalam drive, ini adalah nilai yang dapat Anda tentukan:
- Penyedia Sertifikat
- Sertifikat
- Bursa
- StoreLocation
Untuk informasi selengkapnya, lihat about_Providers.
Jenis: | String |
Alias: | Type |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Name
Menentukan nama item baru. Anda dapat menentukan nama item baru dalam nilai parameter Nama atau Jalur , dan Anda dapat menentukan jalur item baru di nilai Nama atau Jalur . Nama item yang diteruskan menggunakan parameter Nama dibuat relatif terhadap nilai parameter Jalur .
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Options
Ini adalah parameter dinamis yang disediakan oleh penyedia Alias . Untuk informasi selengkapnya, lihat New-Alias.
Menentukan nilai properti Opsi alias.
Nilai yang valid adalah:
None
: Alias tidak memiliki batasan (nilai default)ReadOnly
: Alias dapat dihapus tetapi tidak dapat diubah tanpa menggunakan parameter PaksaConstant
: Alias tidak dapat dihapus atau diubahPrivate
: Alias hanya tersedia dalam cakupan saat iniAllScope
: Alias disalin ke cakupan baru apa pun yang dibuatUnspecified
: Opsi tidak ditentukan
Jenis: | ScopedItemOptions |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-OptionSet
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Meneruskan sekumpulan sakelar ke layanan untuk memodifikasi atau menyempurnakan sifat permintaan.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | Hashtable |
Alias: | OS |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Path
Menentukan jalur lokasi item baru. Defaultnya adalah lokasi saat ini ketika Jalur dihilangkan. Anda dapat menentukan nama item baru di Nama, atau menyertakannya di Jalur. Nama item yang diteruskan menggunakan parameter Nama dibuat relatif terhadap nilai parameter Jalur .
Untuk cmdlet ini, parameter Jalur berfungsi seperti parameter LiteralPath dari cmdlet lain.
Karakter kartubebas tidak ditafsirkan. Semua karakter diteruskan ke penyedia lokasi. Penyedia mungkin tidak mendukung semua karakter. Misalnya, Anda tidak dapat membuat nama file yang berisi karakter tanda bintang (*
).
Jenis: | String[] |
Position: | 0 |
Nilai default: | Current location |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Port
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan port yang akan digunakan ketika klien tersambung ke layanan WinRM.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | Int32 |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-SessionOption
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan sekumpulan opsi yang diperluas untuk sesi WS-Management.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | SessionOption |
Alias: | SO |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-UseSSL
Ini adalah parameter dinamis yang disediakan oleh penyedia WSMan . Penyedia WSMan dan parameter ini hanya tersedia di Windows.
Menentukan bahwa protokol Secure Sockets Layer (SSL) harus digunakan untuk membuat koneksi ke komputer jarak jauh. Secara default, SSL tidak digunakan.
Untuk informasi selengkapnya, lihat New-WSManInstance.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Value
Menentukan nilai item baru. Anda juga dapat menyalurkan nilai ke New-Item
.
Jenis: | Object |
Alias: | Target |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-WhatIf
Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.
Jenis: | SwitchParameter |
Alias: | wi |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan nilai untuk item baru ke cmdlet ini.
Output
Cmdlet mengembalikan objek DictionaryEntry saat membuat variabel lingkungan baru.
Cmdlet mengembalikan objek DirectoryInfo saat membuat direktori baru di sistem file.
Cmdlet mengembalikan objek FileInfo saat membuat file baru di sistem file.
Cmdlet mengembalikan objek AliasInfo saat membuat alias baru.
Cmdlet mengembalikan objek FunctionInfo saat membuat fungsi baru.
Cmdlet mengembalikan objek PSVariable saat membuat variabel baru.
Catatan
PowerShell menyertakan alias berikut untuk New-Item
:
- Semua platform:
ni
New-Item
dirancang untuk bekerja dengan data yang diekspos oleh penyedia mana pun. Untuk mencantumkan penyedia yang tersedia di sesi Anda, ketik Get-PsProvider
. Untuk informasi selengkapnya, lihat about_Providers.