PowerShell Öğeyi Yeniden Adlandır | Power Shell'de Öğeyi Yeniden Adlandırma Süreci
PowerShell Yeniden Adlandırma Öğesine Giriş
PowerShell'deki rename-Item cmdlet'i dosyalar, klasörler, kayıt defteri, sertifikalar vb. öğeleri yeniden adlandırır. Bu cmdlet, öğeleri yeniden adlandırır ancak gerçek içeriklerini değiştirmez veya öğeleri farklı bir konuma taşıyamaz.
Sözdizimi:
Rename-Item
[-Path] <String>
[-LiteralPath] <String>
[-NewName] <String>
[-Force]
[-PassThru]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTranscation]
[<CommonParameters>]PowerShell Yeniden Adlandırma Öğesindeki parametreler
PowerShell Yeniden Adlandırma Öğesine ilişkin parametreler aşağıdadır:
- Yol:Öğenin kaynak yolu. Bu yol dize biçiminde olmalı ve aynı olmalıdır. Joker karakter (*) belirtebilirsiniz, ancak yol birden fazla öğe yerine yalnızca bir öğeyi çözümlemelidir.
- YeniAd:Hedef dosya adı. Varsayılan olarak aynı kaynak yolunu izleyecektir; Farklı yolları açıkça belirtmek hataya neden olur. Yeni bir adda joker karakter (*) karakteri kullanamazsınız. Birden fazla dosya ve uzantıyı yeniden adlandırmak mümkündür.
- Zorla:Değiştirilemeyen öğe adlarını yeniden adlandırır. Salt okunur veya gizli dosya veya klasörler için bu parametre, bunların zorla yeniden adlandırılmasına olanak tanır. Bu parametre sabit takma adı veya değişkeni değiştiremez.
- PassThru:Varsayılan olarak Rename-Object herhangi bir çıktı oluşturmaz. Bu parametre çıkışın konsolda görüntülenmesini sağlar.
- Kimlik bilgisi:Hedef öğeniz farklı bir etki alanında veya çalışma grubundaysa, hedef yola farklı kimlik bilgileriyle bağlanmak için bu parametreyi kullanabilirsiniz.
- Ya şu durumda:Bu parametre, bu komutun gerçekte komut çalıştırılmadan çalıştırılması durumunda hangi işlemin gerçekleştirileceğini bildirmek için kullanılır.
- LiteralPath:Bu parametre aynı zamanda yeniden adlandırılacak öğenin yolunu da belirtir. Hiçbir karakter joker karakter olarak yorumlanmaz. Yol benzersiz bir karakter içeriyorsa, PowerShell'in hiçbir karakteri kaçış dizisi olarak yorumlamaması için bunların tek bir tırnak içine alınması gerekir.
- Onayla:Bu parametre, öğe üzerinde yeniden adlandırma işlemini gerçekleştirmeden önce kullanıcıya sorar.
- UseTranscation:Bu parametre, etkin işlemdeki komutu içerir. Bu parametre yalnızca işlem devam ederken geçerlidir.
: Aşağıdaki parametreler ortak parametreler tarafından desteklenir. ErrorAction, ErrorVariable, WarningAction, WarningVariablem OutBuffer, PipelineVariable ve OutVariable.
PowerShell Yeniden Adlandırma Öğesini Uygulama Örnekleri
Aşağıda PowerShell Rename-Item'da uygulama örneği verilmiştir:
Örnek 1 - Öğeyi Yeniden Adlandır
Kod:
Rename-Item D:\Temp\Putty.log -NewName Putty1.logYukarıdaki örnekte, yeniden adlandırılacak dosya için hedef yolu sağlamadığınızda, dosya varsayılan olarak aynı kaynak yolunu izleyecektir. -Yeniisim parametresini belirtmeden de öğeleri yeniden adlandırabilirsiniz. Bunu yapmak için eski ve yeni adlar arasında boşluk bırakın. Örneğin,
Rename-Item D:\Temp\Putty.log Putty1.logAyrıca klasörü aşağıda gösterildiği gibi yeniden adlandırabilirsiniz.
Rename-Item D:\Temp -NewName Temp1Örnek 2 - Öğeyi Doğrudan Geçiş parametresiyle yeniden adlandırın
Konsoldaki komut çıktısını kontrol etmek için -Passthru parametresini kullanın.
Kod:
Rename-Item D:\Temp\Putty.log -NewName Putty1.log -PassThruÇıktı:
Farklı bir hedef yol sağlamak, bu cmdlet'in taşıma işlemini gerçekleştirememesi nedeniyle hata oluşturacaktır.
Rename-Item D:\Temp\putty.log -NewName D:\putty1.log -PassThruÇıktı:
Örnek 3 - ChildItem'i Whatif Parametresiyle Yeniden Adlandırın
Whatif parametresini kullandığınızda, aslında komutu çalıştırmadan eylem komutunun gerçekleştirileceğini size gösterecektir.
Rename-Item D:\Temp\cars.xml -NewName cars1.xml -PassThru -WhatIfÇıktı:
Örnek 4 - ChildItem'i Confirm parametresiyle yeniden adlandırın
Bu parametre, öğeyi yeniden adlandırmadan önce kullanıcının onayını isteyecektir.
Kod:
Rename-Item D:\Temp\cars.xml -NewName cars1.xml -ConfirmÇıktı:
Parametreyi onaylamak için $true veya $false değerini de sağlayabilirsiniz. $true değeri sağlandığında kullanıcı onayı istenir. $false değeriniz sağlandığında, kullanıcının onayını istemez ve öğeyi doğrudan yeniden adlandırır; bu, -confirm parametresindeki varsayılan seçenektir.
Rename-Item D:\Temp\cars.xml -NewName cars1.xml -Confirm:$trueRename-Item D:\Temp\cars.xml -NewName cars1.xml -Confirm:$falseÖrnek 5 - Kayıt defteri değerini yeniden adlandırın
Dosyayı yeniden adlandırmak gibi, kayıt defteri değerlerini de yeniden adlandırabilirsiniz.
Kod:
Rename-Item HKLM:\SYSTEM\CurrentControlSet\Control\test -NewName Test2Rename-Item HKLM:\SECURITY\Policy\Data -NewName Data1Örnek 6 - Birden fazla dosya uzantısını Rename-Item ile yeniden adlandırın
Birden fazla dosya uzantısını yeniden adlandırmak için aşağıdaki komutu kullanarak bunları değiştirebilirsiniz.
Kod:
PS C:\WINDOWS\system32> Get-ChildItem D:\Temp\* -Include *.html | Rename-Item -NewName {$_.Name -replace '.html','.htm'} -PassThruBirden fazla dosya veya klasörü yeniden adlandırmak için döngüyü kullanmanız gerekir.
Çıktı:
Çözüm
Rename-Item, tek veya birden fazla dosyayı, uzantıyı, klasörü, kayıt defterini vb. yeniden adlandırmak için mükemmel bir araçtır. Ancak dosyaları taşıyamaz veya kopyalayamaz. Onlar için farklı cmdlet'ler mevcuttur.





