SORU
4 AĞUSTOS 2010, ÇARŞAMBA


Nasıl bir dosya " Active Directory birden çok dizeleri değiştirmek için

Bir yapılandırma dosyası özelleştirmek için bir senaryo yazıyorum. Bu dosya içinde dizeleri birden çok örneğini değiştirmek istiyorum, ve powershell işi yapmak için çalıştım. İyi bir tek değiştirmek için çalışıyor, ama ne çok değiştirir her zaman bütün dosyayı yeniden ayrıştırmak için vardır, ve bu dosya çok büyük olduğu için çok yavaş. Komut dosyası bu gibi görünüyor:

$original_file = 'path\filename.abc'
$destination_file =  'path\filename.abc.new'
(Get-Content $original_file) | Foreach-Object {
    $_ -replace 'something1', 'something1new'
    } | Set-Content $destination_file

Benim istediğim bunun gibi bir şey, ama nasıl yazacağımı bilmiyorum:

$original_file = 'path\filename.abc'
$destination_file =  'path\filename.abc.new'
(Get-Content $original_file) | Foreach-Object {
    $_ -replace 'something1', 'something1aa'
    $_ -replace 'something2', 'something2bb'
    $_ -replace 'something3', 'something3cc'
    $_ -replace 'something4', 'something4dd'
    $_ -replace 'something5', 'something5dsf'
    $_ -replace 'something6', 'something6dfsfds'
    } | Set-Content $destination_file

CEVAP
4 AĞUSTOS 2010, ÇARŞAMBA


Bir seçeneği -replace işlemleri birlikte zinciri için. Her satır sonunda ` yeni satır, PowerShell sonraki satırda: ifade ayrıştırma devam etmek için neden kaçar

$original_file = 'path\filename.abc'
$destination_file =  'path\filename.abc.new'
(Get-Content $original_file) | Foreach-Object {
    $_ -replace 'something1', 'something1aa' `
       -replace 'something2', 'something2bb' `
       -replace 'something3', 'something3cc' `
       -replace 'something4', 'something4dd' `
       -replace 'something5', 'something5dsf' `
       -replace 'something6', 'something6dfsfds'
    } | Set-Content $destination_file

Başka bir seçenek, Ara bir değişken atamak için:

$x = $_ -replace 'something1', 'something1aa'
$x = $x -replace 'something2', 'something2bb'
...
$x

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS

    ASUS

    22 EKİM 2005
  • hidetake takayama

    hidetake tak

    3 Mart 2009
  • MrExcite96

    MrExcite96

    17 ŞUBAT 2011