Set-Content
Új tartalmat ír, vagy lecseréli a fájl meglévő tartalmát.
Syntax
Path (Alapértelmezett)
Set-Content
[-Path] <string[]>
[-Value] <Object[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-NoNewline]
[-Encoding <FileSystemCmdletProviderEncoding>]
[-Stream <string>]
[<CommonParameters>]
LiteralPath
Set-Content
[-Value] <Object[]>
-LiteralPath <string[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[-NoNewline]
[-Encoding <FileSystemCmdletProviderEncoding>]
[-Stream <string>]
[<CommonParameters>]
Description
Set-Content egy sztringfeldolgozó parancsmag, amely új tartalmat ír, vagy lecseréli a fájl tartalmát.
Set-Content lecseréli a meglévő tartalmat, és eltér attól a Add-Content parancsmagtól, amely tartalmat fűz egy fájlhoz. Ha tartalmat szeretne küldeni Set-Content használhatja a parancssor Érték paraméterét, vagy tartalmat küldhet a folyamaton keresztül.
Ha a következő példákhoz fájlokat vagy könyvtárakat kell létrehoznia, tekintse meg New-Item.
Példák
1. példa: Több fájl tartalmának cseréje egy könyvtárban
Ez a példa az aktuális könyvtár több fájljának tartalmát cseréli le.
Get-ChildItem -Path .\Test*.txt
Test1.txt
Test2.txt
Test3.txt
Set-Content -Path .\Test*.txt -Value 'Hello, World'
Get-Content -Path .\Test*.txt
Hello, World
Hello, World
Hello, World
A Get-ChildItem parancsmag a Path paraméterrel listáz .txt fájlokat, amelyek az aktuális könyvtárban Test* kezdődnek. A Set-Content parancsmag a Path paramétert használja a Test*.txt fájlok megadásához. Az Get-Content parancsmag a Path paraméter használatával adja meg a Test*.txt fájlokat, és megjeleníti az egyes fájlok tartalmát a PowerShell-konzolon.
2. példa: Új fájl létrehozása és tartalom írása
Ez a példa létrehoz egy új fájlt, és beírja az aktuális dátumot és időt a fájlba.
Set-Content -Path .\DateTime.txt -Value (Get-Date)
Get-Content -Path .\DateTime.txt
1/30/2019 09:55:08
Set-Content a Elérési út és Érték paraméterekkel hoz létre egy új, DateTime.txt nevű fájlt az aktuális könyvtárban. Az Value paraméter Get-Date használatával lekéri az aktuális dátumot és időt.
Set-Content a DateTime objektumot sztringként írja a fájlba. A Get-Content parancsmag a Path paraméter használatával jeleníti meg a DateTime.txt tartalmát a PowerShell-konzolon.
3. példa: Szöveg cseréje fájlban
Ez a parancs lecseréli a word összes példányát egy meglévő fájlban.
Get-Content -Path .\Notice.txt
Warning
Replace Warning with a new word.
The word Warning was replaced.
(Get-Content -Path .\Notice.txt) |
ForEach-Object {$_ -Replace 'Warning', 'Caution'} |
Set-Content -Path .\Notice.txt
Get-Content -Path .\Notice.txt
Caution
Replace Caution with a new word.
The word Caution was replaced.
A Get-Content parancsmag a Path paraméter használatával adja meg a Notice.txt fájlt az aktuális könyvtárban. A Get-Content parancs zárójelekkel van burkolva, így a parancs befejeződik, mielőtt elküldené a folyamatot.
A Notice.txt fájl tartalmát a rendszer elküldi a folyamatnak a ForEach-Object parancsmagnak.
ForEach-Object az automatikus $_ változót használja, és felváltja Figyelmeztetés minden előfordulását Figyelem. A rendszer elküldi az objektumokat a folyamaton a Set-Content parancsmagnak.
Set-Content a Path paraméter használatával adja meg a Notice.txt fájlt, és a frissített tartalmat a fájlba írja.
Az utolsó Get-Content parancsmag megjeleníti a frissített fájltartalmat a PowerShell-konzolon.
4. példa: Szűrők használata Set-Content
Megadhat egy szűrőt a Set-Content parancsmaghoz. Ha szűrőkkel minősíti a Elérési út paramétert, egy záró csillagot (*) kell tartalmaznia az elérési út tartalmának jelzéséhez.
Az alábbi parancs a *.txt könyvtárban lévő összes fájlt üres C:\TempÉrték értékre állítja.
Set-Content -Path C:\Temp\* -Filter *.txt -Value "Empty"
Paraméterek
-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 |
-Credential
Megjegyzés:
Ezt a paramétert a PowerShell-lel telepített szolgáltatók nem támogatják. Ha egy másik felhasználó szerepében szeretne fellépni, vagy emelni szeretné hitelesítő adatait a parancsmag futtatásakor, használja a Invoke-Command.
Paramétertulajdonságok
| Típus: | PSCredential |
| 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: | True |
| 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 következő: Alapértelmezett.
A kódolás egy dinamikus paraméter, amelyet a Fájlrendszer-szolgáltató hozzáad Set-Content. Ez a paraméter csak fájlrendszer-meghajtókon működik.
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.
- BigEndianUTF32 UTF-32-t használ a big-endian bájtsorrenddel.
- Bájt bájtok sorozatába kódol egy karaktersorozatot.
- 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.
A kódolás egy dinamikus paraméter, amelyet a Fájlrendszer-szolgáltató hozzáad Set-Content. Ez a paraméter csak fájlrendszer-meghajtókon működik.
Paramétertulajdonságok
| Típus: | FileSystemCmdletProviderEncoding |
| Alapértelmezett érték: | Default |
| Elfogadott értékek: | ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
| 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 |
-Exclude
Sztringtömbként olyan elemet vagy elemeket határoz meg, amelyeket ez a parancsmag kizár a műveletből. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például *.txt. A helyettesítő karakterek használata engedélyezett. A Kizárás paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*, ahol a helyettesítő karakter a C:\Windows könyvtár tartalmát adja meg.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| 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 |
-Filter
Szűrőt ad meg a útvonal paraméter minősítéséhez. A Fájlrendszer szolgáltató az egyetlen telepített PowerShell-szolgáltató, amely támogatja a szűrők használatát. A FileSystem szűrőnyelvének szintaxisát az about_Wildcards-ban találhatja meg. A szűrők hatékonyabbak, mint a többi paraméter, mivel a szolgáltató akkor alkalmazza őket, amikor a parancsmag lekéri az objektumokat, és nem azt, hogy a PowerShell szűrje az objektumokat a lekérés után.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| 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 |
-Force
Kényszeríti a parancsmagot egy fájl tartalmának beállítására, még akkor is, ha a fájl írásvédett. A megvalósítás szolgáltatónként eltérő. További információért lásd a about_Providerscímű részt. 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 |
-Include
Sztringtömbként egy elemet vagy elemet határoz meg, amelyet ez a parancsmag tartalmaz a műveletben. Ennek a paraméternek az értéke a Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például "*.txt". A helyettesítő karakterek használata engedélyezett. Az Include paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*, ahol a helyettesítő karakter a C:\Windows könyvtár tartalmát adja meg.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| 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 |
-LiteralPath
Egy vagy több hely elérési útját adja meg. A LiteralPath értéke pontosan a beíráskor használatos. A rendszer egyetlen karaktert sem értelmez helyettesítő karakterként. 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
LiteralPath
| 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 |
-NoNewline
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 |
-PassThru
A tartalmat jelképező objektumot ad vissza. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.
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 |
-Path
Megadja a tartalmat fogadó elem elérési útját. A helyettesítő karakterek használata engedélyezett.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| DontShow: | False |
Paraméterkészletek
Path
| Position: | 0 |
| 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 |
-Stream
Alternatív adatfolyamot ad meg a tartalomhoz. Ha a stream nem létezik, ez a parancsmag hozza létre. A helyettesítő karakterek nem támogatottak.
Stream egy dinamikus paraméter, amelyet a Fájlrendszer szolgáltató hozzáad Set-Content. Ez a paraméter csak fájlrendszer-meghajtókon működik.
A Set-Content parancsmaggal módosíthatja a Zone.Identifier alternatív adatfolyam tartalmát. Ezt azonban nem javasoljuk, hogy kiküszöbölje az internetről letöltött fájlokat letiltó biztonsági ellenőrzéseket. Ha ellenőrzi, hogy egy letöltött fájl biztonságos-e, használja a Unblock-File parancsmagot.
Ezt a paramétert a PowerShell 3.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | String |
| 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 |
-UseTransaction
Tartalmazza a parancsot az aktív tranzakcióban. Ez a paraméter csak akkor érvényes, ha egy tranzakció folyamatban van. További információ: about_Transactions.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | usetx |
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 |
-Value
Megadja az elem új tartalmát.
Paramétertulajdonságok
| Típus: | Object[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 1 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| 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 |
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
Object
Az elem új értékét tartalmazó objektumot Set-Content.
Kimenetek
None or System.String
Ha a PassThru paramétert használja, Set-Content létrehoz egy System.String objektumot, amely a tartalmat jelöli. Ellenkező esetben ez a parancsmag nem hoz létre kimenetet.
Jegyzetek
- A
Set-Contentis hivatkozhat a beépített aliasára,sc. További információ: about_Aliases. -
Set-Contentsztringfeldolgozásra tervezték. Ha nem sztringobjektumokatSet-Content, az írás előtt sztringgé alakítja át az objektumot. Ha objektumokat szeretne fájlba írni, használja aOut-File. - A
Set-Contentparancsmag úgy lett kialakítva, hogy bármely szolgáltató által közzétett adatokkal működjön együtt. A munkamenetben elérhető szolgáltatók listájához írja be aGet-PsProvider. További információért lásd a about_Providerscímű részt.