Rename-Item
Mengganti nama item di namespace penyedia PowerShell.
Sintaks
Rename-Item
[-Path] <String>
[-NewName] <String>
[-Force]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Rename-Item
-LiteralPath <String>
[-NewName] <String>
[-Force]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Deskripsi
Rename-Item
Cmdlet mengubah nama item tertentu. Cmdlet ini tidak memengaruhi isi item yang diganti namanya.
Anda tidak dapat menggunakan Rename-Item
untuk memindahkan item, seperti dengan menentukan jalur bersama dengan nama baru. Untuk memindahkan dan mengganti nama item, gunakan Move-Item
cmdlet.
Contoh
Contoh 1: Mengganti nama file
Perintah ini mengganti nama file daily_file.txt
menjadi monday_file.txt
.
Rename-Item -Path "c:\logfiles\daily_file.txt" -NewName "monday_file.txt"
Contoh 2: Mengganti nama dan memindahkan item
Anda tidak dapat menggunakan Rename-Item
untuk mengganti nama dan memindahkan item. Secara khusus, Anda tidak dapat menyediakan jalur untuk nilai parameter NewName , kecuali jalurnya identik dengan jalur yang ditentukan dalam parameter Jalur . Jika tidak, hanya nama baru yang diizinkan.
Rename-Item -Path "project.txt" -NewName "d:\archive\old-project.txt"
Rename-Item : can't rename because the target specified represents a path or device name.
At line:1 char:12
+ Rename-Item <<<< -path project.txt -NewName d:\archive\old-project.txt
+ CategoryInfo : InvalidArgument: (:) [Rename-Item], PS> Move-Item -Path "project.txt" -De
stination "d:\archive\old-project.txt"
Contoh ini mencoba mengganti nama project.txt
file di direktori saat ini menjadi old-project.txt
di D:\Archive
direktori. Hasilnya adalah kesalahan yang ditunjukkan dalam output.
Move-Item
Gunakan cmdlet, sebagai gantinya.
Contoh 3: Mengganti nama kunci registri
Contoh ini mengganti nama kunci registri dari Iklan ke Pemasaran. Ketika perintah selesai, kunci diganti namanya, tetapi entri registri dalam kunci tidak berubah.
Rename-Item -Path "HKLM:\Software\MyCompany\Advertising" -NewName "Marketing"
Contoh 4: Mengganti nama beberapa file
Contoh ini mengganti nama semua *.txt
file di direktori saat ini menjadi *.log
.
Get-ChildItem *.txt
Directory: C:\temp\files
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 10/3/2019 7:47 AM 2918 Friday.TXT
-a---- 10/3/2019 7:46 AM 2918 Monday.Txt
-a---- 10/3/2019 7:47 AM 2918 Wednesday.txt
Get-ChildItem *.txt | Rename-Item -NewName { $_.Name -replace '.txt','.log' }
Get-ChildItem *.log
Directory: C:\temp\files
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 10/3/2019 7:47 AM 2918 Friday.log
-a---- 10/3/2019 7:46 AM 2918 Monday.log
-a---- 10/3/2019 7:47 AM 2918 Wednesday.log
Get-ChildItem
Cmdlet mendapatkan semua file di folder saat ini yang memiliki .txt
ekstensi file lalu menyalurkannya ke Rename-Item
. Nilai NewName adalah blok skrip yang berjalan sebelum nilai dikirimkan ke parameter NewName .
Dalam blok skrip, $_
variabel otomatis mewakili setiap objek file saat datang ke perintah melalui alur. Blok skrip menggunakan -replace
operator untuk mengganti ekstensi file dari setiap file dengan .log
. Perhatikan bahwa pencocokan menggunakan -replace
operator tidak peka huruf besar/kecil.
Parameter
-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: | Current user |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Force
Memaksa cmdlet untuk mengganti nama item yang tidak dapat diubah, seperti file tersembunyi atau baca-saja atau alias atau variabel baca-saja. Cmdlet tidak dapat mengubah alias atau variabel konstanta. Implementasi bervariasi dari penyedia ke penyedia. Untuk informasi selengkapnya, lihat about_Providers.
Bahkan menggunakan parameter Force , cmdlet tidak dapat mengambil alih pembatasan keamanan.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-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 |
-NewName
Menentukan nama baru item. Masukkan hanya nama, bukan jalur dan nama. Jika Anda memasukkan jalur yang berbeda dari jalur yang ditentukan dalam parameter Jalur , Rename-Item
menghasilkan kesalahan.
Untuk mengganti nama dan memindahkan item, gunakan Move-Item
.
Anda tidak dapat menggunakan karakter kartubebas dalam nilai parameter NewName . Untuk menentukan nama untuk beberapa file, gunakan operator Ganti dalam ekspresi reguler. Untuk informasi selengkapnya tentang operator Ganti, lihat about_Comparison_Operators.
Jenis: | String |
Position: | 1 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-PassThru
Mengembalikan objek yang mewakili item ke alur. Secara default, cmdlet ini tidak menghasilkan output apa pun.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Path
Menentukan jalur item yang akan diganti namanya.
Jenis: | String |
Position: | 0 |
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 string yang berisi jalur ke cmdlet ini.
Output
None
Secara default, cmdlet ini tidak mengembalikan output.
Saat Anda menggunakan parameter PassThru , cmdlet ini mengembalikan objek yang mewakili item yang diganti namanya.
Catatan
PowerShell menyertakan alias berikut untuk Rename-Item
:
- Semua platform:
ren
rni
Rename-Item
dirancang untuk bekerja dengan data yang diekspos oleh penyedia mana pun. Untuk mencantumkan penyedia yang tersedia di sesi Anda, ketik Get-PsProvider
. Untuk informasi selengkapnya, lihat about_Providers.