Out-File
Çıktıyı bir dosyaya gönderir.
Syntax
ByPath (Varsayılan)
Out-File
[-FilePath] <string>
[[-Encoding] <Encoding>]
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByLiteralPath
Out-File
[[-Encoding] <Encoding>]
-LiteralPath <string>
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Out-File cmdlet'i çıktıyı bir dosyaya gönderir. Dosyaya yazmak için PowerShell'in biçimlendirme sistemini örtük olarak kullanır. Dosya, terminalle aynı görüntüleme gösterimini alır. Bu, tüm giriş nesneleri dize olmadığı sürece çıkışın programlı işleme için ideal olmayabileceği anlamına gelir.
Çıktı için parametre belirtmeniz gerektiğinde, yeniden yönlendirme işleci yerine Out-File kullanın (>). Yeniden yönlendirme hakkında daha fazla bilgi için bkz. about_Redirection.
Örnekler
Örnek 1: Çıktı gönderme ve dosya oluşturma
Bu örnekte, yerel bilgisayarın işlemlerinin listesini bir dosyaya gönderme işlemi gösterilmektedir. Dosya yoksa, Out-File dosyayı belirtilen yolda oluşturur.
Get-Process | Out-File -FilePath .\Process.txt
Get-Content -Path .\Process.txt
NPM(K) PM(M) WS(M) CPU(s) Id SI ProcessName
------ ----- ----- ------ -- -- -----------
29 22.39 35.40 10.98 42764 9 Application
53 99.04 113.96 0.00 32664 0 CcmExec
27 96.62 112.43 113.00 17720 9 Code
Get-Process cmdlet'i, yerel bilgisayarda çalışan işlemlerin listesini alır.
İşlem nesneleri işlem hattına Out-File cmdlet'ine gönderilir.
Out-File
FilePath parametresini kullanır ve geçerli dizinde Process.txtadlı bir dosya oluşturur.
Get-Content komutu dosyadan içerik alır ve PowerShell konsolunda görüntüler.
Örnek 2: Varolan bir dosyanın üzerine yazılmasını engelleme
Bu örnek, var olan bir dosyanın üzerine yazılmasını engeller. Varsayılan olarak, Out-File var olan dosyaların üzerine yazar.
Get-Process | Out-File -FilePath .\Process.txt -NoClobber
Out-File : The file 'C:\Test\Process.txt' already exists.
At line:1 char:15
+ Get-Process | Out-File -FilePath .\Process.txt -NoClobber
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Get-Process cmdlet'i, yerel bilgisayarda çalışan işlemlerin listesini alır.
İşlem nesneleri işlem hattına Out-File cmdlet'ine gönderilir.
Out-File
FilePath parametresini kullanır ve geçerli dizindeki Process.txtadlı bir dosyaya yazmaya çalışır.
NoClobber parametresi, dosyanın üzerine yazılmasını engeller ve dosyanın zaten var olduğunu belirten bir ileti görüntüler.
Örnek 3: Çıktıyı ASCII biçiminde bir dosyaya gönderme
Bu örnekte, çıkışı belirli bir kodlama türüyle kodlama gösterilmektedir.
$Procs = Get-Process
Out-File -FilePath .\Process.txt -InputObject $Procs -Encoding ASCII -Width 50
Get-Process cmdlet'i, yerel bilgisayarda çalışan işlemlerin listesini alır.
İşlem nesneleri $Procsdeğişkeninde depolanır.
Out-File
FilePath parametresini kullanır ve geçerli dizinde Process.txtadlı bir dosya oluşturur.
InputObject parametresi, $Procs içindeki işlem nesnelerini Process.txtdosyasına geçirir.
Kodlama parametresi çıkışı ASCII biçimine dönüştürür.
Width parametresi, dosyadaki her satırı 50 karakterle sınırlar, böylece bazı veriler kesilebilir.
Örnek 4: Sağlayıcı kullanma ve çıktıyı dosyaya gönderme
Bu örnekte, bir Out-File sağlayıcı sürücüsünde olmadığınızda cmdlet'in nasıl kullanılacağı gösterilmektedir. Yerel bilgisayarınızdaki sağlayıcıları görüntülemek için Get-PSProvider cmdlet'ini kullanın. Daha fazla bilgi için bkz. about_Providers.
PS> Set-Location -Path Alias:
PS> Get-Location
Path
----
Alias:\
PS> Get-ChildItem | Out-File -FilePath C:\TestDir\AliasNames.txt
PS> Get-Content -Path C:\TestDir\AliasNames.txt
CommandType Name
----------- ----
Alias % -> ForEach-Object
Alias ? -> Where-Object
Alias ac -> Add-Content
Alias cat -> Get-Content
Set-Location komutu, geçerli konumu kayıt defteri sağlayıcısına ayarlamak için Alias: parametresini kullanır.
Get-Location cmdlet'i Alias:için tam yolu görüntüler.
Get-ChildItem nesneleri işlem hattından Out-File cmdlet'ine gönderir.
Out-File, çıktının tam yolunu ve dosya adını belirtmek için FilePath parametresini C:\TestDir\AliasNames.txtkullanır.
Get-Content cmdlet'i Path parametresini kullanır ve dosyanın içeriğini PowerShell konsolunda görüntüler.
Parametreler
-Append
Çıktıyı var olan bir dosyanın sonuna ekler.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Cf |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Encoding
Hedef dosya için kodlama türünü belirtir. Varsayılan değer şudur: utf8NoBOM.
Bu parametre için kabul edilebilir değerler aşağıdaki gibidir:
-
ascii: ASCII (7 bit) karakter kümesi için kodlamayı kullanır. -
bigendianunicode: Büyük endian bayt sırasını kullanarak UTF-16 biçiminde kodlar. -
oem: MS-DOS ve konsol programları için varsayılan kodlamayı kullanır. -
unicode: Küçük-öncelikli bayt sırası kullanılarak UTF-16 biçiminde kodlanır. -
utf7: UTF-7 biçiminde kodlar. -
utf8: UTF-8 biçiminde kodlar. -
utf8BOM: Bayt Sırası İşareti (BOM) ile UTF-8 biçiminde kodlar -
utf8NoBOM: Bayt Sırası İşareti (BOM) olmadan UTF-8 biçiminde kodlar -
utf32: UTF-32 biçiminde kodlar.
PowerShell 6.2'den başlayarak, Kodlama parametresi, kayıtlı kod sayfalarının sayısal kimliklerine (-Encoding 1251gibi) veya kayıtlı kod sayfalarının dize adlarına (-Encoding "windows-1251"gibi) de izin verir. Daha fazla bilgi için Encoding.CodePageiçin .NET belgelerine bakın.
Parametre özellikleri
| Tür: | Encoding |
| Default value: | UTF8NoBOM |
| Kabul edilen değerler: | ASCII, BigEndianUnicode, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | 1 |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-FilePath
Çıkış dosyasının yolunu belirtir.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Yol |
Parametre kümeleri
ByPath
| Position: | 0 |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Force
Salt okunur özniteliği geçersiz kılar ve var olan bir salt okunur dosyanın üzerine yazar. Force parametresi güvenlik kısıtlamalarını geçersiz kılmaz.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-InputObject
Dosyaya yazılacak nesneleri belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın.
Parametre özellikleri
| Tür: | PSObject |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | True |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-LiteralPath
Çıkış dosyasının yolunu belirtir. LiteralPath parametresi tam olarak yazıldığı gibi kullanılır. Joker karakterler kabul edilmiyor. Yol kaçış karakterleri içeriyorsa, yolu tek tırnak işaretleriyle çevreleyin. Tek tırnak işaretleri, PowerShell'in hiçbir karakteri kaçış dizisi olarak yorumlamamasını sağlar. Daha fazla bilgi için bkz. about_Quoting_Rules.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | PSPath, LP |
Parametre kümeleri
ByLiteralPath
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | True |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-NoClobber
NoClobber var olan bir dosyanın üzerine yazılmasını engeller ve dosyanın zaten var olduğunu belirten bir ileti görüntüler. Varsayılan olarak, belirtilen yolda bir dosya varsa, Out-File uyarı olmadan dosyanın üzerine yazar.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | NoOverwrite |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-NoNewline
Dosyaya yazılan içeriğin yeni satır karakteriyle bitmediğini belirtir. Giriş nesnelerinin dize gösterimleri, çıkışı oluşturmak için birleştirilir. Çıkış dizeleri arasına boşluk veya yeni satır eklenmez. Son çıkış dizesinden sonra yeni satır eklenmez.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-WhatIf
Cmdlet çalıştırılırsa ne olacağını gösterir. Cmdlet çalıştırılmaz.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Wi |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Width
Çıktının her satırındaki karakter sayısını belirtir. Ek karakterler kırpılır, sarmalanmaz. Bu parametre kullanılmazsa, genişlik ana bilgisayarın özelliklerine göre belirlenir. PowerShell konsolu için varsayılan değer 80 karakterdir.
Parametre özellikleri
| Tür: | Int32 |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
CommonParameters
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
Girişler
PSObject
herhangi bir nesneyi Out-File.
Çıkışlar
None
Out-File herhangi bir çıkış oluşturmaz.
Notlar
Giriş nesneleri terminalde olduğu gibi otomatik olarak biçimlendirilir, ancak dosya çıktısının biçimlendirmesini açıkça denetlemek için bir Format-* cmdlet'i kullanabilirsiniz. Örneğin, Get-Date | Format-List | Out-File out.txt
PowerShell komutunun çıkışını Out-File cmdlet'ine göndermek için işlem hattını kullanın. Alternatif olarak, verileri bir değişkende depolayabilir ve cmdlet'ine veri geçirmek için Out-File parametresini kullanabilirsiniz.
Out-File Verileri bir dosyaya kaydeder, ancak işlem hattına herhangi bir çıkış nesnesi oluşturmaz.