Add-Content
Menambahkan konten ke item yang ditentukan, seperti menambahkan kata ke file.
Sintaks
Add-Content
[-Path] <string[]>
[-Value] <Object[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-NoNewline]
[-Encoding <Encoding>]
[-AsByteStream]
[-Stream <string>]
[<CommonParameters>]
Add-Content
[-Value] <Object[]>
-LiteralPath <string[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-NoNewline]
[-Encoding <Encoding>]
[-AsByteStream]
[-Stream <string>]
[<CommonParameters>]
Deskripsi
Add-Content
Cmdlet menambahkan konten ke item atau file tertentu. Konten dapat diteruskan dari alur atau ditentukan dengan menggunakan parameter Nilai .
Jika Anda perlu membuat file atau direktori untuk contoh berikut, lihat Item Baru.
Contoh
Contoh 1: Menambahkan string ke semua file teks dengan pengecualian
Contoh ini menambahkan nilai ke file teks di direktori saat ini tetapi mengecualikan file berdasarkan nama filenya.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
Parameter Jalur menentukan semua .txt
file di direktori saat ini, tetapi parameter Kecualikan mengabaikan nama file yang cocok dengan pola yang ditentukan. Parameter Nilai menentukan string teks yang ditulis ke file.
Gunakan Get-Content untuk menampilkan isi file-file ini.
Contoh 2: Menambahkan tanggal ke akhir file yang ditentukan
Contoh ini menambahkan tanggal ke file di direktori saat ini dan menampilkan tanggal di konsol PowerShell.
Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThru
Get-Content -Path .\DateTimeFile1.log
Tuesday, May 14, 2019 8:24:27 AM
Tuesday, May 14, 2019 8:24:27 AM
5/14/2019 8:24:27 AM
Add-Content
Cmdlet membuat dua file baru di direktori saat ini. Parameter Nilai berisi output Get-Date
cmdlet. Parameter PassThru menghasilkan konten yang ditambahkan ke alur. Karena tidak ada cmdlet lain untuk menerima output, cmdlet ditampilkan di konsol PowerShell. Get-Content
Cmdlet menampilkan file yang diperbarui, DateTimeFile1.log
.
Contoh 3: Menambahkan konten file tertentu ke file lain
Contoh ini mendapatkan konten dari file dan menyimpan konten dalam variabel. Variabel digunakan untuk menambahkan konten ke file lain.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
Get-Content
Cmdlet mendapatkan kontenCopyFromFile.txt
dan menyimpan konten dalam$From
variabel.Add-Content
Cmdlet memperbaruiCopyToFile.txt
file menggunakan konten$From
variabel.Get-Content
Cmdlet menampilkan CopyToFile.txt.
Contoh 4: Menambahkan konten file tertentu ke file lain menggunakan alur
Contoh ini mendapatkan konten dari file dan menyalurkannya ke Add-Content
cmdlet.
Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txt
Get-Content -Path .\CopyToFile.txt
Get-Content
Cmdlet mendapatkan konten CopyFromFile.txt
. Hasilnya disalurkan ke Add-Content
cmdlet, yang memperbarui CopyToFile.txt
.
Cmdlet terakhir Get-Content
menampilkan CopyToFile.txt
.
Contoh 5: Membuat file baru dan menyalin konten
Contoh ini membuat file baru dan menyalin konten file yang ada ke dalam file baru.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
Add-Content
Cmdlet menggunakan parameter Jalur dan Nilai untuk membuat file baru di direktori saat ini.Get-Content
Cmdlet mendapatkan konten file yang ada,CopyFromFile.txt
dan meneruskannya ke parameter Nilai. Tanda kurung diGet-Content
sekitar cmdlet memastikan bahwa perintah selesai sebelumAdd-Content
perintah dimulai.Get-Content
Cmdlet menampilkan konten file baru,NewFile.txt
.
Contoh 6: Menambahkan konten ke file baca-saja
Perintah ini menambahkan nilai ke file meskipun atribut file IsReadOnly diatur ke True. Langkah-langkah untuk membuat file baca-saja disertakan dalam contoh.
New-Item -Path .\IsReadOnlyTextFile.txt -ItemType File
Set-ItemProperty -Path .\IsReadOnlyTextFile.txt -Name IsReadOnly -Value $True
Get-ChildItem -Path .\IsReadOnlyTextFile.txt
Add-Content -Path .\IsReadOnlyTextFile.txt -Value 'Add value to read-only text file' -Force
Get-Content -Path .\IsReadOnlyTextFile.txt
Mode LastWriteTime Length Name
---- ------------- ------ ----
-ar-- 1/28/2019 13:35 0 IsReadOnlyTextFile.txt
New-Item
Cmdlet menggunakan parameter Path dan ItemType untuk membuat fileIsReadOnlyTextFile.txt
di direktori saat ini.Set-ItemProperty
Cmdlet menggunakan parameter Nama dan Nilai untuk mengubah properti IsReadOnly file menjadi True.Get-ChildItem
Cmdlet menunjukkan file kosong (0
) dan memiliki atribut baca-saja (r
).Add-Content
Cmdlet menggunakan parameter Jalur untuk menentukan file. Parameter Nilai menyertakan string teks untuk ditambahkan ke file. Parameter Paksa menulis teks ke file baca-saja.Get-Content
Cmdlet menggunakan parameter Jalur untuk menampilkan konten file.
Untuk menghapus atribut baca-saja, gunakan Set-ItemProperty
perintah dengan parameter Nilai diatur ke False
.
Contoh 7: Menggunakan Filter dengan Add-Content
Anda dapat menentukan filter ke Add-Content
cmdlet. Saat menggunakan filter untuk memenuhi syarat parameter Jalur , Anda perlu menyertakan tanda bintang berikutnya (*
) untuk menunjukkan konten jalur.
Perintah berikut menambahkan kata "Selesai" konten semua *.txt
file dalam C:\Temp
direktori.
Add-Content -Path C:\Temp\* -Filter *.txt -Value "Done"
Parameter
-AsByteStream
Menentukan bahwa konten harus dibaca sebagai aliran byte. Parameter ini diperkenalkan di PowerShell 6.0.
Peringatan terjadi saat Anda menggunakan parameter AsByteStream dengan parameter Pengodean . Parameter AsByteStream mengabaikan pengodean apa pun dan output dikembalikan sebagai aliran byte.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Confirm
Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.
Jenis: | SwitchParameter |
Alias: | cf |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Credential
Catatan
Parameter ini tidak didukung oleh penyedia apa pun yang diinstal dengan PowerShell. Untuk meniru pengguna lain, atau meningkatkan kredensial Anda saat menjalankan cmdlet ini, gunakan Invoke-Command.
Jenis: | PSCredential |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Encoding
Menentukan jenis pengodean untuk file target. Nilai defaultnya adalah utf8NoBOM
.
Pengodean adalah parameter dinamis yang ditambahkan penyedia FileSystem ke Add-Content
cmdlet. Parameter ini hanya berfungsi dalam drive sistem file.
Nilai yang dapat diterima untuk parameter ini adalah sebagai berikut:
ascii
: Menggunakan pengodean untuk set karakter ASCII (7-bit).ansi
: Menggunakan pengodean untuk halaman kode ANSI budaya saat ini. Opsi ini ditambahkan di PowerShell 7.4.bigendianunicode
: Mengodekan dalam format UTF-16 menggunakan urutan byte big-endian.bigendianutf32
: Mengodekan dalam format UTF-32 menggunakan urutan byte big-endian.oem
: Menggunakan pengodean default untuk MS-DOS dan program konsol.unicode
: Mengodekan dalam format UTF-16 menggunakan urutan byte little-endian.utf7
: Mengodekan dalam format UTF-7.utf8
: Mengodekan dalam format UTF-8.utf8BOM
: Mengodekan dalam format UTF-8 dengan Byte Order Mark (BOM)utf8NoBOM
: Mengodekan dalam format UTF-8 tanpa Byte Order Mark (BOM)utf32
: Mengodekan dalam format UTF-32.
Dimulai dengan PowerShell 6.2, parameter Pengodean juga memungkinkan ID numerik halaman kode terdaftar (seperti -Encoding 1251
) atau nama string halaman kode terdaftar (seperti -Encoding "windows-1251"
). Untuk informasi selengkapnya, lihat dokumentasi .NET untuk Encoding.CodePage.
Dimulai dengan PowerShell 7.4, Anda dapat menggunakan Ansi
nilai untuk parameter Pengodean untuk meneruskan ID numerik untuk halaman kode ANSI budaya saat ini tanpa harus menentukannya secara manual.
Catatan
UTF-7* tidak lagi disarankan untuk digunakan. Pada PowerShell 7.1, peringatan ditulis jika Anda menentukan utf7
untuk parameter Pengodean .
Jenis: | Encoding |
Nilai yang diterima: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
Position: | Named |
Nilai default: | UTF8NoBOM |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Exclude
Menentukan, sebagai array string, item atau item yang dikecualikan cmdlet ini dalam operasi. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti *.txt
. Karakter kartubebas diizinkan. Parameter Kecualikan hanya efektif ketika perintah menyertakan konten item, seperti C:\Windows\*
, di mana karakter kartubebas C:\Windows
menentukan konten direktori.
Jenis: | String[] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
-Filter
Menentukan filter untuk memenuhi syarat parameter Jalur . Penyedia FileSystem adalah satu-satunya penyedia PowerShell yang diinstal yang mendukung penggunaan filter. Anda dapat menemukan sintaks untuk bahasa filter FileSystem dalam about_Wildcards. Filter lebih efisien daripada parameter lain, karena penyedia menerapkannya ketika cmdlet mendapatkan objek daripada memfilter PowerShell objek setelah diambil.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
-Force
Mengambil alih atribut baca-saja, memungkinkan Anda menambahkan konten ke file baca-saja. Misalnya, Paksa mengambil alih atribut baca-saja tetapi tidak mengubah izin file.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Include
Menentukan, sebagai array string, item atau item yang disertakan cmdlet ini dalam operasi. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti "*.txt"
. Karakter kartubebas diizinkan. Parameter Sertakan hanya efektif ketika perintah menyertakan konten item, seperti C:\Windows\*
, di mana karakter kartubebas C:\Windows
menentukan konten direktori.
Jenis: | String[] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
-LiteralPath
Menentukan jalur ke satu atau beberapa lokasi. Nilai LiteralPath digunakan persis seperti yang ditik. Tidak ada karakter yang ditafsirkan sebagai kartubebas. Jika jalur menyertakan karakter escape, sertakan dalam tanda kutip tunggal. Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.
Untuk informasi selengkapnya, lihat about_Quoting_Rules.
Jenis: | String[] |
Alias: | PSPath, LP |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-NoNewline
Menunjukkan bahwa cmdlet ini tidak menambahkan baris atau pengangkutan baru kembali ke konten.
Representasi string dari objek input digabungkan untuk membentuk output. Tidak ada spasi atau baris baru yang dimasukkan di antara string output. Tidak ada baris baru yang ditambahkan setelah string output terakhir.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-PassThru
Mengembalikan objek yang mewakili konten yang ditambahkan. Secara default, cmdlet ini tidak menghasilkan output apa pun.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Path
Menentukan jalur ke item yang menerima konten tambahan. Karakter kartubebas diizinkan. Jalur harus berupa jalur ke item, bukan ke kontainer. Misalnya, Anda harus menentukan jalur ke satu atau beberapa file, bukan jalur ke direktori. Jika Anda menentukan beberapa jalur, gunakan koma untuk memisahkan jalur.
Jenis: | String[] |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | True |
-Stream
Catatan
Parameter ini hanya tersedia di Windows.
Menentukan aliran data alternatif untuk konten. Jika aliran tidak ada, cmdlet ini akan membuatnya. Karakter kartubebas tidak didukung.
Stream adalah parameter dinamis yang ditambahkan penyedia FileSystem ke Add-Content
. Parameter ini hanya berfungsi dalam drive sistem file.
Anda dapat menggunakan Add-Content
cmdlet untuk mengubah konten aliran data alternatif apa pun, seperti Zone.Identifier
. Namun, kami tidak merekomendasikan ini sebagai cara untuk menghilangkan pemeriksaan keamanan yang memblokir file yang diunduh dari Internet. Jika Anda memverifikasi bahwa file yang diunduh aman, gunakan Unblock-File
cmdlet .
Parameter ini diperkenalkan di PowerShell 3.0. Pada PowerShell 7.2, Add-Content
dapat menargetkan aliran data alternatif pada file dan direktori.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Value
Menentukan isi yang akan ditambahkan. Ketik string yang dikutip, seperti Data ini hanya untuk penggunaan internal, atau tentukan objek yang berisi konten, seperti objek DateTime yang Get-Date
dihasilkan.
Anda tidak dapat menentukan konten file dengan mengetik jalurnya, karena jalurnya hanyalah string.
Anda dapat menggunakan Get-Content
perintah untuk mendapatkan konten dan meneruskannya ke parameter Nilai .
Jenis: | Object[] |
Position: | 1 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-WhatIf
Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.
Jenis: | SwitchParameter |
Alias: | wi |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan nilai ke Add-Content
.
Anda dapat menyalurkan kredensial ke Add-Content
.
Output
None
Secara default, cmdlet ini tidak mengembalikan output.
Saat Anda menggunakan parameter PassThru, cmdlet ini mengembalikan objek System.String yang mewakili konten.
Catatan
PowerShell menyertakan alias berikut untuk Add-Content
:
Windows:
ac
Saat Anda menyalurkan objek ke
Add-Content
, objek dikonversi ke string sebelum ditambahkan ke item. Jenis objek menentukan format string, tetapi formatnya mungkin berbeda dari tampilan default objek. Untuk mengontrol format string, gunakan parameter pemformatan cmdlet pengiriman.Add-Content
Cmdlet dirancang untuk bekerja dengan data yang diekspos oleh penyedia mana pun. Untuk mencantumkan penyedia yang tersedia di sesi Anda, ketikGet-PSProvider
. Untuk informasi selengkapnya, lihat about_Providers.