Bagikan melalui


New-Item

Membuat item baru.

Sintaks

pathSet (Default) - All providers

New-Item
    [-Path] <String[]>
    [-ItemType <String>]
    [-Value <Object>]
    [-Force]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

nameSet - All providers

New-Item
    [[-Path] <String[]>]
    -Name <String>
    [-ItemType <String>]
    [-Value <Object>]
    [-Force]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

pathSet (Default) - WSMan provider

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>]

nameSet - WSMan provider

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>]

pathSet (Default) - Alias provider

New-Item
    [-Path] <string[]>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Options <ScopedItemOptions>]
    [<CommonParameters>]

nameSet - Alias provider

New-Item
    [[-Path] <string[]>]
    -Name <string>
    [-ItemType <string>]
    [-Value <Object>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Options <ScopedItemOptions>]
    [<CommonParameters>]

Deskripsi

Cmdlet New-Item 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 drive C:. 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 variabel $PROFILE.

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, variabel $PROFILE mewakili jalur file. parameter ItemType menentukan bahwa perintah membuat file. Parameter Paksa 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

Cmdlet New-Item mendukung wildcard dalam parameter Jalur. Perintah berikut membuat file temp.txt 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

Cmdlet Get-ChildItem menunjukkan tiga direktori di bawah direktori C:\Temp. Menggunakan kartubebas cmdlet New-Item membuat file temp.txt di semua direktori di bawah direktori saat ini. cmdlet New-Item menghasilkan item yang Anda buat, yang disalurkan ke Select-Object untuk 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 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 dan kemudian membuat ulang file menggunakan parameter Force. Ini menimpa file yang ada, seperti yang Anda lihat oleh 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

Nota

Saat menggunakan New-Item dengan parameter Force untuk membuat kunci registri, perintah berfungsi sama seperti saat menimpa file. Jika kunci registri sudah ada, kunci dan semua properti dan nilai 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.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

nameSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:AuthenticationMechanism
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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 sidik jari sertifikat.

Untuk informasi selengkapnya, lihat New-WSManInstance.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Confirm

Meminta konfirmasi sebelum menjalankan cmdlet.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:Cf

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:Uri
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

pathSet
Position:Named
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Credential

Nota

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.

Properti parameter

Jenis:PSCredential
Nilai default:Current user
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa: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 mengabaikan 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".

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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 drive FileSystem, nilai berikut diizinkan:

  • File
  • Directory
  • SymbolicLink
  • Junction
  • HardLink

Nota

Membuat jenis SymbolicLink 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.

Dalam drive Certificate, ini adalah nilai yang dapat Anda tentukan:

  • Certificate Provider
  • Certificate
  • Store
  • StoreLocation

Untuk informasi selengkapnya, lihat about_Providers.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Tipe

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

nameSet
Position:Named
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-Options

Ini adalah parameter dinamis yang disediakan oleh penyedia Alias. Untuk informasi selengkapnya, lihat New-Alias.

Menentukan nilai properti Opsi dari sebuah alias.

Nilai yang valid adalah:

  • None: Alias tidak memiliki batasan (nilai default)
  • ReadOnly: Alias dapat dihapus tetapi tidak dapat diubah tanpa menggunakan parameter Force
  • Constant: Alias tidak dapat dihapus atau diubah
  • Private: Alias hanya tersedia dalam cakupan saat ini
  • AllScope: Alias disalin ke semua cakupan baru yang dibuat
  • Unspecified: Opsi tidak ditentukan

Properti parameter

Jenis:ScopedItemOptions
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:Hashtable
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Sistem operasi

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Path

Menentukan jalur lokasi item baru. Defaultnya adalah lokasi saat ini saat Jalur dihilangkan. Anda dapat menentukan nama item baru diNama , atau menyertakannya di jalur . Nama item yang diteruskan menggunakan parameter Nama dibuat relatif terhadap nilai parameter Jalur.

Untuk cmdlet ini, parameter Path berfungsi seperti parameter LiteralPath cmdlet lainnya. 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 (*).

Properti parameter

Jenis:

String[]

Nilai default:Current location
Mendukung wildcard:False
DontShow:False

Set parameter

pathSet
Position:0
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False
nameSet
Position:0
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:Int32
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:True
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:SessionOption
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Jadi

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:SwitchParameter
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

nameSet
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Value

Menentukan nilai item baru. Anda juga dapat menyalurkan nilai ke New-Item.

Properti parameter

Jenis:Object
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:Sasaran

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-WhatIf

Menunjukkan apa yang akan terjadi ketika cmdlet dijalankan. Cmdlet tidak dijalankan.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:wi

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

CommonParameters

Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.

Input

Object

Anda dapat menyalurkan nilai untuk item baru ke cmdlet ini.

Output

DictionaryEntry

Cmdlet mengembalikan objek DictionaryEntry saat membuat variabel lingkungan baru.

DirectoryInfo

Cmdlet mengembalikan objek DirectoryInfo saat membuat direktori baru di sistem file.

FileInfo

Cmdlet mengembalikan objek FileInfo saat membuat file baru di sistem file.

AliasInfo

Cmdlet mengembalikan objek AliasInfo saat membuat alias baru.

FunctionInfo

Cmdlet mengembalikan objek FunctionInfo saat membuat fungsi baru.

PSVariable

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 dalam sesi Anda, ketik Get-PSProvider. Untuk informasi selengkapnya, lihat tentang_Penyedia.