New-Item
Yeni bir öğe oluşturur.
Sözdizimi
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>]
Description
New-Item
Cmdlet yeni bir öğe oluşturur ve değerini ayarlar. Oluşturulabilecek öğe türleri, öğenin konumuna bağlıdır. Örneğin, dosya sisteminde New-Item
dosya ve klasörler oluşturur. Kayıt defterinde kayıt New-Item
defteri anahtarları ve girdileri oluşturur.
New-Item
, oluşturduğu öğelerin değerini de ayarlayabilir. Örneğin, yeni bir dosya oluşturduğunda, New-Item
dosyaya ilk içeriği ekleyebilir.
Örnekler
Örnek 1: Geçerli dizinde dosya oluşturma
Bu komut, geçerli dizinde "testfile1.txt" adlı bir metin dosyası oluşturur. Path parametresinin değerindeki nokta ('.'), geçerli dizini gösterir. Value parametresini izleyen tırnak içine alınmış metin dosyaya içerik olarak eklenir.
New-Item -Path . -Name "testfile1.txt" -ItemType "File" -Value "This is a text string."
Örnek 2: Dizin oluşturma
Bu komut, sürücüde C:
"Logfiles" adlı bir dizin oluşturur.
ItemType parametresi, yeni öğenin bir dosya veya başka bir dosya sistemi nesnesi değil bir dizin olduğunu belirtir.
New-Item -Path "C:\" -Name "Logfiles" -ItemType "Directory"
Örnek 3: Profil oluşturma
Bu komut, değişken tarafından $PROFILE
belirtilen yolda bir PowerShell profili oluşturur.
PowerShell'i özelleştirmek için profilleri kullanabilirsiniz.
$PROFILE
, "CurrentUser/CurrentHost" profilinin yolunu ve dosya adını depolayan otomatik (yerleşik) bir değişkendir. Varsayılan olarak, PowerShell bunun için bir yol ve dosya adı depolasa bile profil yoktur.
Bu komutta $PROFILE
, değişkeni dosyanın yolunu temsil eder.
ItemType parametresi, komutun bir dosya oluşturduğunu belirtir.
Force parametresi, yoldaki dizinler mevcut olmasa bile profil yolunda bir dosya oluşturmanıza olanak tanır.
Profil oluşturduktan sonra, kabuğunuzu özelleştirmek için profile diğer adlar, işlevler ve betikler girebilirsiniz.
Daha fazla bilgi için bkz . about_Automatic_Variables ve about_Profiles.
New-Item -Path $PROFILE -ItemType "File" -Force
Örnek 4: Farklı bir dizinde dizin oluşturma
Bu örnek, "C:\PS-Test" dizininde yeni bir Betikler dizini oluşturur.
Yeni dizin öğesinin adı olan "Betikler", Ad değerinde belirtilme yerine Path parametresinin değerine eklenir. Söz diziminde belirtildiği gibi, her iki komut formu da geçerlidir.
New-Item -ItemType "Directory" -Path "C:\ps-test\scripts"
Örnek 5: Birden çok dosya oluşturma
Bu örnek iki farklı dizinde dosya oluşturur. Yol birden çok dize aldığından, birden çok öğe oluşturmak için bunu kullanabilirsiniz.
New-Item -ItemType "File" -Path "C:\ps-test\test.txt", "C:\ps-test\Logs\test.log"
Örnek 6: Birden çok dizinde dosya oluşturmak için joker karakter kullanma
Cmdlet, New-Item
Path parametresindeki joker karakterleri destekler. Aşağıdaki komut, Pathtemp.txt
bir dosya oluşturur.
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'i Get-ChildItem
dizinin altında C:\Temp
üç dizin gösterir. Cmdlet joker karakterler New-Item
kullanarak geçerli dizin altındaki tüm dizinlerde bir temp.txt
dosya oluşturur.
New-Item
Cmdlet, yeni oluşturulan dosyaların yollarını doğrulamak için Select-Object
yöneltilen, oluşturduğunuz öğelerin çıkışını alır.
Örnek 7: Dosya veya klasöre sembolik bağlantı oluşturma
Bu örnek, geçerli klasördeki Notice.txt dosyasına sembolik bir bağlantı oluşturur.
$link = New-Item -ItemType SymbolicLink -Path .\link -Target .\Notice.txt
$link | Select-Object LinkType, Target
LinkType Target
-------- ------
SymbolicLink {.\Notice.txt}
Bu örnekte Target, Value parametresi için bir diğer addır. Sembolik bağlantının hedefi göreli bir yol olabilir. PowerShell v6.2 sürümünden önce hedefin tam yol olması gerekir.
PowerShell 7.1'de başlayarak, artık göreli bir yol kullanarak Windows'taki bir klasöre SymbolicLink oluşturabilirsiniz.
Örnek 8: Klasörleri yeniden oluşturmak için -Force parametresini kullanın
Bu örnek, içinde dosya bulunan bir klasör oluşturur. Ardından, kullanarak -Force
aynı klasörü oluşturmayı dener. Klasörün üzerine yazılmaz, ancak var olan klasör nesnesini olduğu gibi oluşturulan dosyayla döndürür.
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
Örnek 9: Varolan dosyaların üzerine yazmak için Zorla parametresini kullanın
Bu örnek, değeri olan bir dosya oluşturur ve sonra Force parametresini kullanarak dosyayı yeniden oluşturur. Bu, Uzunluğu özelliğinde görebileceğiniz gibi var olan dosyanın üzerine yazar.
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
Not
Kayıt defteri anahtarlarını oluşturmak için New-Item
parametresiyle kullanırken, komut dosyanın üzerine yazılırken olduğu gibi davranır. Kayıt defteri anahtarı zaten varsa, anahtarın ve tüm özelliklerin ve değerlerin üzerine boş bir kayıt defteri anahtarı yazılır.
Parametreler
-ApplicationName
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
Bağlantıdaki uygulama adını belirtir. ApplicationName parametresinin varsayılan değeri WSMAN'dır.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Authentication
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
Sunucuda kullanılacak kimlik doğrulama mekanizmasını belirtir.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | AuthenticationMechanism |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-CertificateThumbprint
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
Bu WSMan eylemini gerçekleştirme izni olan bir kullanıcı hesabının dijital ortak anahtar sertifikasını (X509) belirtir. Sertifikanın sertifika parmak izini girin.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Tür: | SwitchParameter |
Diğer adlar: | cf |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-ConnectionURI
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
WSMan için bağlantı uç noktasını belirtir.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | Uri |
Position: | Named |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Credential
Not
Bu parametre, PowerShell ile yüklenen sağlayıcılar tarafından desteklenmez. Bu cmdlet'i çalıştırırken başka bir kullanıcının kimliğine bürünmek veya kimlik bilgilerinizi yükseltmek için kullanın Invoke-Command
.
Tür: | PSCredential |
Position: | Named |
Default value: | Current user |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Force
Bu cmdlet'i var olan bir salt okunur öğenin üzerine yazan bir öğe oluşturmaya zorlar. Uygulama sağlayıcıdan sağlayıcıya değişir. Zorla parametresi kullanıldığında bile cmdlet güvenlik kısıtlamalarını geçersiz kılamaz.
PowerShell 7.4'den başlayarak, bu parametre var olan bir Birleşimin üzerine yazmanızı da sağlar. Daha önce bu durum "boş olmadığından kaldırılamıyor" hatasıyla başarısız olacaktı.
Tür: | SwitchParameter |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-ItemType
Yeni öğenin sağlayıcı tarafından belirtilen türünü belirtir. Bu parametrenin kullanılabilir değerleri, kullandığınız geçerli sağlayıcıya bağlıdır.
Konumunuz bir FileSystem
sürücüdeyse aşağıdaki değerlere izin verilir:
File
Directory
SymbolicLink
Junction
HardLink
Not
Windows'ta tür SymbolicLink
oluşturmak için yönetici olarak yükseltme gerekir. Ancak Geliştirici Modu'nu etkinleştiren Windows 10 (derleme 14972 veya üzeri) artık sembolik bağlantılar oluşturmak için yükseltme gerektirmez.
Bir Certificate
sürücüde, belirtebileceğiniz değerler şunlardır:
Certificate Provider
Certificate
Store
StoreLocation
Daha fazla bilgi için bkz. about_Providers.
Tür: | String |
Diğer adlar: | Type |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Name
Yeni öğenin adını belirtir. Ad veya Yol parametresi değerinde yeni öğenin adını ve Ad veya Yol değeri'nde yeni öğenin yolunu belirtebilirsiniz. Ad parametresi kullanılarak geçirilen öğe adları, Path parametresinin değerine göre oluşturulur.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Options
Bu, Diğer Ad sağlayıcısı tarafından sağlanan dinamik bir parametredir. Daha fazla bilgi için bkz . Yeni-Diğer Ad.
Diğer adın Options özelliğinin değerini belirtir.
Geçerli değerler:
-
None
: Diğer adın kısıtlaması yok (varsayılan değer) -
ReadOnly
: Diğer ad silinebilir ancak Zorla parametresi kullanılmadan değiştirilemez -
Constant
: Diğer ad silinemez veya değiştirilemez -
Private
: Diğer ad yalnızca geçerli kapsamda kullanılabilir -
AllScope
: Diğer ad, oluşturulan tüm yeni kapsamlara kopyalanır -
Unspecified
: Seçenek belirtilmemiş
Tür: | ScopedItemOptions |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-OptionSet
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
İsteğin niteliğini değiştirmek veya iyileştirmek için bir dizi anahtarı bir hizmete geçirir.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | Hashtable |
Diğer adlar: | OS |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Path
Yeni öğenin konumunun yolunu belirtir. Varsayılan, Yol atlandığında geçerli konumdur. Yeni öğenin adını Ad'da belirtebilir veya Yol'a ekleyebilirsiniz. Ad parametresi kullanılarak geçirilen öğe adları, Path parametresinin değerine göre oluşturulur.
Bu cmdlet için Path parametresi, diğer cmdlet'lerin LiteralPath parametresi gibi çalışır.
Joker karakterler yorumlanmaz. Tüm karakterler konumun sağlayıcısına geçirilir. Sağlayıcı tüm karakterleri desteklemeyebilir. Örneğin, yıldız (*
) karakteri içeren bir dosya adı oluşturamazsınız.
Tür: | String[] |
Position: | 0 |
Default value: | Current location |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Port
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
İstemci WinRM hizmetine bağlandığında kullanılacak bağlantı noktasını belirtir.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | Int32 |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-SessionOption
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
WS-Management oturumu için bir dizi genişletilmiş seçenek tanımlar.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | SessionOption |
Diğer adlar: | SO |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-UseSSL
Bu, WSMan sağlayıcısı tarafından sağlanan dinamik bir parametredir. WSMan sağlayıcısı ve bu parametre yalnızca Windows'ta kullanılabilir.
Uzak bilgisayara bağlantı kurmak için Güvenli Yuva Katmanı (SSL) protokolunun kullanılması gerektiğini belirtir. Varsayılan olarak SSL kullanılmaz.
Daha fazla bilgi için bkz . New-WSManInstance.
Tür: | SwitchParameter |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Value
Yeni öğenin değerini belirtir. Ayrıca bir değeri öğesine de yöneltebilirsiniz New-Item
.
Tür: | Object |
Diğer adlar: | Target |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-WhatIf
Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.
Tür: | SwitchParameter |
Diğer adlar: | wi |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
Girişler
Yeni öğe için bir değeri bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
Cmdlet, yeni bir ortam değişkeni oluştururken bir DictionaryEntry nesnesi döndürür.
Cmdlet, dosya sisteminde yeni bir dizin oluştururken bir DirectoryInfo nesnesi döndürür.
Cmdlet, dosya sisteminde yeni bir dosya oluştururken bir FileInfo nesnesi döndürür.
Cmdlet, yeni bir diğer ad oluştururken bir AliasInfo nesnesi döndürür.
Cmdlet, yeni bir işlev oluştururken bir FunctionInfo nesnesi döndürür.
Cmdlet, yeni bir değişken oluştururken PSVariable nesnesi döndürür.
Notlar
PowerShell için aşağıdaki diğer adları New-Item
içerir:
- Tüm platformlar:
ni
New-Item
herhangi bir sağlayıcı tarafından kullanıma sunulan verilerle çalışacak şekilde tasarlanmıştır. Oturumunuzda kullanılabilen sağlayıcıları listelemek için yazın Get-PSProvider
. Daha fazla bilgi için bkz . about_Providers.