Powershell を使用して、テキスト構成ファイルの「最大」値を自動的に微調整しようとしています。構成ファイルは次のようになります (ただし、約 200 のエントリが含まれています)。
ChannelName = ItemA
Min = 0.0
Max = 100.0
Units = Deg C
ChannelName = ItemB
Units = Deg C
Min = 0.0
OtherItem1 = 123
OtherItem2 = 456
ChannelName = ItemC
Units = Deg C
Min = 0.0
Max = 100.0
注意すべきこと、
- すべての ChannelNamesにはそれぞれ関連する 'Max' エントリが必要ですが、過去にこのファイルを誤って手動で編集した場合はそうでないものもあります
- 「Max」エントリは、チャネル名の後の同じ場所に常にあるとは限らないため、関心のあるチャネル名を見つけた後、X 行をカウントダウンできません。
適切なサンプルコードが含まれていないことを感謝しますが、初心者として何も動作させることができないため、助けを求めています。コードを次のように動作させたいのですが、
タスク例:「ItemB」の「最大」値を 200 に設定します。
Get-Content "C:\ConfigFile.txt"
Scan down text file looking for 'ItemB'
Error message if Item B not found and exit
If ItemB is found, continue down the list until either 'ChannelName' or 'Max' is found
If a 'ChannelName' entry is found first, 'ItemB' is missing its 'Max' entry - Error message and exit
If a 'Max' entry is found first, set 'Max' to equal 200
この例では ItemB の「最大」値が欠落しているため、ItemC の「最大」値が誤って 200 に変更されないように、適切なエラー チェックが行われていることを確認する必要があります。