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

  • Abbeydabby0277's channel

    Abbeydabby02

    9 ŞUBAT 2012
  • boniver

    boniver

    17 NİSAN 2006
  • funbro1

    funbro1

    11 Aralık 2007