IISのWebサイトを取得する次の2つのスクリプトがあります。実行コマンドはOSとIFサービスに依存します。
6 IIS -
$website = Get-WmiObject -Class IIsWebServerSetting -Namespace "root\microsoftiisv2" | Select ServerComment | Format-Table -HideTableHeaders | out-file c:\website.txt
$b = Get-Content -Path C:\website.txt
$b | ForEach {$_.TrimEnd()} | ? {$_.trim() -ne '' } > C:\website.txt
$b = Get-Content -Path C:\website.txt
@(ForEach ($a in $b) {$a.Replace(' ', '')}) > C:\website.txt
Get-Content C:\website.txt
はwebadministrationモジュールがII6では使用できませんので、私はIIS 6(Windows 2003のホスト)のための別のスクリプトを持っている7+
Import-Module webadministration
$a = Get-Website | Select-Object Name
$a | ForEach-Object {
$_.name = $_.name.replace(" ","")
}
$a | Format-Table -HideTableHeaders | Out-File $DeviceDrive\Apps\NetprobeNT\Auto-monitor\Website.txt
$b = Get-Content -Path $DeviceDrive\Apps\NetprobeNT\Auto-monitor\Website.txt
$b | ForEach {$_.TrimEnd()} | ? {$_.trim() -ne '' } > $DeviceDrive\Apps\NetprobeNT\Auto-monitor\Website.txt
$b = Get-Content -Path $DeviceDrive\Apps\NetprobeNT\Auto-monitor\Website.txt
@(ForEach ($a in $b) {$a.Replace(' ', '')}) > $DeviceDrive\Apps\NetprobeNT\Auto-monitor\Website.txt
をIIS。
ホストオペレーティングシステムおよびW3SVCサービス(World Wide Web Publishing Service)が存在する(実行中または停止している)正しいコードを実行するロジックを追加する文を追加する必要があります。行に沿って何か
IF W3SVC is present Check host operating system IF operating system = Windows 2003 Run II6 code Else Run II7+ code
私はこのスクリプトのどこから始めるべきかわかりません。 PowerShellとスクリプトは私には新しく、これは私が作成している最初のスクリプトの一部です。どんな助けでも大歓迎です。
私はホストオペレーティングシステムを手に入れることができますが、必要な結果を得るためにどのようにロジックを組み込むのか混乱します。
(Get-WmiObject Win32_OperatingSystem).Name
すばやい回答ありがとうございます。Windows 2003の異なるバージョンつまり、Windows 2003のサービスパック2.どこにも*は必要ないでしょうか?また、どのようにIF文に結合するのですか? –
異なるWindows Serverエディション(StandardやEnterpriseなど)を処理する必要がある場合は、ワイルドカードが必要です。サービスパックの情報がキャプションに表示されません。ステートメントを組み合わせる場合:あなたの宿題を考慮してください。あなたはすでに擬似コードを持っているので、あまりにも難しくはありません。 –
組み合わせてテストしました。私はIF文を第1のIF文の中に入れます。 IveはWindows 2003 *をインストールしようとしましたが、間違っています。ワイルドカードを正しく使用していますか? –