2016-06-27 6 views
2

最近、Windows Server 2008 R2 EnterpriseなどのWindowsサーバーのフレンドリ名を取得するための答えが得られましたが、これを正しく行うコードは「Windows Server」です。Powershellで複数のサーバー名を変更する

Microsoft(R) Windows(R) Server 2003, Standard Edition. 

は、だから私はしたいスクリプトこれがあれば、 "マイクロソフト(R)のWindows(R)" を削除するには:

$Build = (Get-WmiObject -Class Win32_OperatingSystem -Computername $Computer | Select-Object -ExpandProperty Caption) -replace "Microsoft Windows Server ","" 

しかし、私は、Windows 2003がわずかに異なる命名規則を持っていることを発見しました場合。私は-or -replace "Microsoft(R) Windows(R) Server ",""を追加しようとしましたが、これはうまくいかないようです。

答えて

2

RegExのOR演算子(|)を使用すると、置き換えられる2つの単語を一致させることができます。

-replace [Regex]"Microsoft Windows Server |Microsoft\(R\) Windows\(R\) ","" 

それとも、簡単なだけで最初-replace後に別の-replaceを使用することができます。

-replace "Microsoft Windows Server ","" -replace "Microsoft\(R\) Windows\(R\) ","" 

注:あなたは彼らが、例えば交換するために括弧をエスケープする必要があります\( & \)

関連する問題