Sadece bu işe almak gerekiyordu ve aşağıdakileri ile geldi:
$InServerName = 'SomeServerNameorIPAddress'
$InFilePath = '\Sharename\SomePath\'
$InFileName = 'Filename.ext'
$OutServerName = 'SomeServerNameorIPAddress'
$OutFilePath = '\Sharename\SomePath\'
$OutFileName = 'Filename.out'
$InFile = -join('\\',$InServerName,$InFilePath,$InFilename)
$OutFile = -join('\\',$OutServerName,$OutFilePath,$OutFilename)
$FindStr = 'some string to match on'
$CompareStr = [scriptblock]::Create($FindStr)
$CompareStr
Get-Content $InFile | Where-Object {$_ -notmatch $CompareStr} | Set-Content $OutFile
Get-Content $OutFile
Anahtar, bir komut dosyası bloğu (kıvırcık ayraçlar tarafından belirtildiği gibi) kullanan 'Where-Object' değişkeninin bir komut dosyası bloğu oluşturma olayında bildirilmesini gerektirmesidir.
$CompareStr = [scriptblock]::Create($FindStr)
hat.
Bu şekilde yapılandırarak, bir işlev oluşturulabilir, kısmen eşleştirmek için bir metin dizesi iletilebilir, komut dosyası bloğu oluşturma işlemini geçirilen değerle gerçekleştirebilir ve düzgün çalışmasını sağlayabilirsiniz.
Yukarıdaki yanıtlar, bir değişken içinde değiştirilecek değerin nasıl iletileceğini doğru bir şekilde açıklamaz.