Megosztás a következőn keresztül:


Out-File

Kimenetet küld egy fájlnak.

Syntax

ByPath (Alapértelmezett)

Out-File
    [-FilePath] <string>
    [[-Encoding] <string>]
    [-Append]
    [-Force]
    [-NoClobber]
    [-Width <int>]
    [-NoNewline]
    [-InputObject <psobject>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByLiteralPath

Out-File
    [[-Encoding] <string>]
    -LiteralPath <string>
    [-Append]
    [-Force]
    [-NoClobber]
    [-Width <int>]
    [-NoNewline]
    [-InputObject <psobject>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

A Out-File parancsmag kimenetet küld egy fájlnak. Ha paramétereket kell megadnia a kimenethez, az átirányítási operátor ()Out-File helyett használja>.

Példák

1. példa: Kimenet küldése és fájl létrehozása

Ez a példa bemutatja, hogyan küldheti el a helyi számítógép folyamatainak listáját egy fájlba. Ha a fájl nem létezik, Out-File a megadott elérési úton hozza létre a fájlt.

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

A Get-Process parancsmag lekéri a helyi számítógépen futó folyamatok listáját. A folyamat objektumokat a rendszer elküldi a folyamaton a Out-File parancsmagnak. Out-File a FilePath paramétert használja, és létrehoz egy fájlt az aktuális Process.txtnevű könyvtárban. A Get-Content parancs lekéri a fájlt, és megjeleníti azt a PowerShell-konzolon.

2. példa: Meglévő fájl felülírásának megakadályozása

Ez a példa megakadályozza egy meglévő fájl felülírását. Alapértelmezés szerint Out-File felülírja a meglévő fájlokat.

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
+               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

A Get-Process parancsmag lekéri a helyi számítógépen futó folyamatok listáját. A folyamat objektumokat a rendszer elküldi a folyamaton a Out-File parancsmagnak. Out-File a FilePath paramétert használja, és megpróbál írni egy fájlba az aktuális könyvtárban, Process.txt. A NoClobber paraméter megakadályozza a fájl felülírását, és üzenetet jelenít meg arról, hogy a fájl már létezik.

3. példa: Kimenet küldése fájlba ASCII formátumban

Ez a példa bemutatja, hogyan kódolhatja a kimenetet egy adott kódolási típussal.

$Procs = Get-Process
Out-File -FilePath .\Process.txt -InputObject $Procs -Encoding ASCII -Width 50

A Get-Process parancsmag lekéri a helyi számítógépen futó folyamatok listáját. A folyamat objektumokat a változó tárolja, $Procs. Out-File a FilePath paramétert használja, és létrehoz egy fájlt az aktuális Process.txtnevű könyvtárban. Az InputObject paraméter átadja a $Procs folyamatobjektumait a Process.txtfájlnak. A Kódolás paraméter ASCII formátumba konvertálja a kimenetet. A Szélesség paraméter a fájl minden sorát 50 karakterre korlátozza, hogy egyes adatok csonkoljanak.

4. példa: Szolgáltató használata és kimenet küldése fájlba

Ez a példa bemutatja, hogyan használhatja a parancsmagot Out-File , ha nem fájlrendszer-szolgáltatói meghajtón van. A Get-PSProvider parancsmaggal megtekintheti a helyi számítógépen lévő szolgáltatókat. További információért lásd a about_Providerscímű részt.

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

A Set-Location parancs a Path paraméter használatával állítja be az aktuális helyet a beállításjegyzék-szolgáltató Alias:. A Get-Location parancsmag megjeleníti a Alias:teljes elérési útját. Get-ChildItem objektumokat küld a folyamaton a Out-File parancsmagnak. Out-File a FilePath paraméter használatával adja meg a kimenet teljes elérési útját és fájlnevét, C:\TestDir\AliasNames.txt. A Get-Content parancsmag a Elérési út paramétert használja, és megjeleníti a fájl tartalmát a PowerShell-konzolon.

Paraméterek

-Append

Hozzáadja a kimenetet egy meglévő fájl végéhez. Ha nincs megadva kódolás , a parancsmag az alapértelmezett kódolást használja. Előfordulhat, hogy ez a kódolás nem egyezik a célfájl kódolásával. Ez ugyanaz a viselkedés, mint az átirányítási operátor (>>).

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Confirm

Megerősítést kér a parancsmag futtatása előtt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Cf

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Encoding

Megadja a célfájl kódolási típusát. Az alapértelmezett érték a Unicode.

A paraméter elfogadható értékei a következők:

  • ASCII ASCII (7 bites) karakterkészletet használ.
  • BigEndianUnicode UTF-16-ot használ a big-endian bájtsorrenddel.
  • Alapértelmezett A rendszer aktív kódlapjának (általában ANSI) megfelelő kódolást használja.
  • OEM A rendszer aktuális OEM-kódlapjának megfelelő kódolást használja.
  • Unicode-sztring.
  • Unicode UTF-16-ot használ a kis-endian bájtsorrenddel.
  • Ismeretlen Ugyanaz, mint Unicode.
  • UTF7 UTF-7-et használ.
  • UTF8 UTF-8-at használ.
  • UTF32 UTF-32-t használ a kis végű bájtsorrenddel.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:Unicode
Elfogadott értékek:ASCII, BigEndianUnicode, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:1
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-FilePath

Megadja a kimeneti fájl elérési útját.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

ByPath
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Force

Felülírja az írásvédett attribútumot, és felülír egy meglévő írásvédett fájlt. A Force paraméter nem bírálja felül a biztonsági korlátozásokat.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-InputObject

Megadja a fájlba írandó objektumokat. Adjon meg egy változót, amely tartalmazza az objektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat.

Paramétertulajdonságok

Típus:PSObject
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:True
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-LiteralPath

Megadja a kimeneti fájl elérési útját. A LiteralPath paramétert a rendszer pontosan úgy használja, ahogy be van írva. A helyettesítő karakterek nem fogadhatók el. Ha az elérési útvonal escape karaktereket tartalmaz, tedd azt egyes idézőjelek közé. Az egyes idézőjelek azt mondják a PowerShellnek, hogy egyetlen karaktert se értelmezzen escape szekvenciaként. További információk az about_Quoting_Rules oldalon találhatók: .

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:PSPath

Paraméterkészletek

ByLiteralPath
Position:Named
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-NoClobber

NoClobber megakadályozza egy meglévő fájl felülírását, és megjeleníti a fájl már létező üzenetét. Alapértelmezés szerint, ha egy fájl létezik a megadott elérési úton, Out-File figyelmeztetés nélkül felülírja a fájlt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:NoOverwrite

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-NoNewline

Megadja, hogy a fájlba írt tartalom ne végződjön újsorral. A bemeneti objektumok sztringreprezentációi összefűzve jelennek meg a kimenet létrehozásához. A kimeneti sztringek között nincsenek szóközök vagy új sorok. Az utolsó kimeneti sztring után nincs új vonal hozzáadva.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-WhatIf

Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Wi

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Width

Az egyes kimeneti sorokban szereplő karakterek számát adja meg. A további karakterek csonkolva vannak, nem burkolva. Ha ezt a paramétert nem használják, a szélességet a gazdagép jellemzői határozzák meg. A PowerShell-konzol alapértelmezett értéke 80 karakter.

Paramétertulajdonságok

Típus:Int
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

PSObject

Bármilyen objektumot becsúszthat Out-File.

Kimenetek

None

Out-File nem hoz létre kimenetet.

Jegyzetek

A Out parancsmagok nem formázzák az objektumokat, csak renderelik őket, és elküldik őket a megadott megjelenítési célhelyre. Ha formázatlan objektumot küld egy Out parancsmagnak, a parancsmag a megjelenítés előtt elküldi azt egy formázási parancsmagnak.

Egy PowerShell-parancs kimenetének a Out-File parancsmagba való küldéséhez használja a folyamatot. Az adatokat egy változóban tárolhatja, és az InputObject paraméterrel adatokat adhat át a Out-File parancsmagnak.

Out-File adatokat küld, de nem hoz létre kimeneti objektumokat. Ha a kimenetet Out-File a következőre Get-Membertovábbítja, a Get-Member parancsmag azt jelenti, hogy nincs megadva objektum.