New-Item
Yeni bir öğe oluşturur.
Syntax
New-Item
[-Path] <string[]>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
New-Item
[-Path] <string[]>
-ConnectionURI <uri>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-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]
[-UseTransaction]
[-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]
[-UseTransaction]
[-Options <ScopedItemOptions>]
[<CommonParameters>]
New-Item
[[-Path] <string[]>]
-Name <string>
[-ItemType <string>]
[-Value <Object>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-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
Not
Bu yöntemi kullanarak bir dosya oluşturduğunuzda, sonuçta elde edilen dosya bayt-sipariş işareti (BOM) olmadan UTF-8 olarak kodlanır.
Ö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, Path parametresindeki joker karakterler tarafından belirtilen tüm dizinlerde bir temp.txt
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 tam nitelikli bir yol olmalıdır.
Ö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 -Force parametresini kullanın
Bu örnek, değeri olan bir dosya oluşturur ve kullanarak dosyayı -Force
yeniden oluşturur. Bu, length özelliği tarafından 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
New-Item
Kayıt defteri anahtarları oluşturmak için anahtarı ile kullanırken-Force
, 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.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | AuthenticationMechanism |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | 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
.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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.
Varolan bir Kavşağın üzerine yazmak için Zorla seçeneğini kullanamazsınız. Var olan bir Birleşimin üzerine yazma girişimleri "boş olmadığından kaldırılamıyor" hatasıyla başarısız oluyor. Yeni bir birleşim oluşturmadan önce mevcut Birleşimi kaldırmanız gerekir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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:
- Dosya
- Dizin
- SymbolicLink
- Kavşak
- Sabit Bağlantı
Bu yöntemi kullanarak bir dosya oluşturduğunuzda, sonuçta elde edilen dosya bayt-sipariş işareti (BOM) olmadan UTF-8 olarak kodlanır.
Bir Certificate
sürücüde, belirtebileceğiniz değerler şunlardır:
- Sertifika Sağlayıcısı
- Sertifika
- Store
- StoreLocation
Daha fazla bilgi için bkz. about_Providers.
Type: | String |
Aliases: | Type |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | 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ştirilemezConstant
: Diğer ad silinemez veya değiştirilemezPrivate
: Diğer ad yalnızca geçerli kapsamda kullanılabilirAllScope
: Diğer ad, oluşturulan tüm yeni kapsamlara kopyalanırUnspecified
: Seçenek belirtilmemiş
Type: | ScopedItemOptions |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | Hashtable |
Aliases: | OS |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String[] |
Position: | 0 |
Default value: | Current location |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | SessionOption |
Aliases: | SO |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-UseTransaction
Komutunu etkin işleme ekler. Bu parametre yalnızca bir işlem devam ederken geçerlidir. Daha fazla bilgi için bkz . about_Transactions.
Type: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Yeni öğenin değerini belirtir. Ayrıca bir değeri öğesine de yöneltebilirsiniz New-Item
.
Type: | Object |
Aliases: | Target |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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
Windows PowerShell için aşağıdaki diğer adları New-Item
içerir:
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.
İlişkili Bağlantılar
PowerShell
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin