SORU
14 Mayıs 2010, Cuma


Bulmak ve Değiştirmek için PowerShell Komut dosyası Belirli bir Uzantıya sahip Dosyaları

2008 gibi iç içe geçmiş Windows Server üzerinde birkaç yapılandırma dosyaları var:

C:\Projects\Project_1\project1.config

C:\Projects\Project_2\project2.config

Benim yapılandırma gibi bir dize değiştirme yapmak istiyorum:

<add key="Environment" value="Dev"/>

olacak:

<add key="Environment" value="Demo"/>

Toplu iş komut dosyası kullanma hakkında düşündüm, ama bunu yapmak için iyi bir yolu yok, ve PowerShell komut dosyası ile kolayca bu işlemi gerçekleştirebilirsiniz duydum. Bul/değiştir örnekleri buldum, ama traverse benim c:\projects içindeki tüm klasörler ve dizin ile biten tüm dosyaları bulur bir şekilde bekliyordum '.config' uzantısı. Bir tane bulduğunda, onu dize değerleri değiştirmek istiyorum.

Bunun nasıl yapılacağı ya da bazı bilgiler sunabileceği herhangi bir PowerShell uzmanları öğrenmek için herhangi bir iyi kaynaklar?

CEVAP
14 Mayıs 2010, Cuma


Kafamın üstündeki buraya ilk girişim.

$configFiles = Get-ChildItem . *.config -rec
foreach ($file in $configFiles)
{
    (Get-Content $file.PSPath) |
    Foreach-Object { $_ -replace "Dev", "Demo" } |
    Set-Content $file.PSPath
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MC JIN'S OLD YouTube CHANNEL

    MC JIN'S OLD

    2 Kasım 2008
  • BaaaStuds's channel

    BaaaStuds's

    10 Mart 2009
  • Rayone GB

    Rayone GB

    14 Temmuz 2007