4

私はパワーシェルの初心者です。

何日も検索した後....

ページ ファイル、/PAE スイッチ、/3GB スイッチ、SQL サーバーの最大 RAM、最小 RAM をチェックするための小さな PowerShell スクリプト (以下) をまとめました。これを1つのサーバーで実行しています。

多くのサーバーで (.txt から) ファイルを実行したい場合、どうすれば変更できますか? 特定のサーバーの boot.ini ファイルの内容を検索するように変更するにはどうすればよいですか?

clear
$strComputer="."

$PageFile=Get-WmiObject Win32_PageFile -ComputerName $strComputer
Write-Host "Page File Size in MB: " ($PageFile.Filesize/(1024*1024))


$colItems=Get-WmiObject Win32_PhysicalMemory -Namespace root\CIMv2 -ComputerName $strComputer
$total=0
foreach ($objItem in $colItems)
{
    $total=$total+ $objItem.Capacity
}


$isPAEEnabled =Get-WmiObject Win32_OperatingSystem -ComputerName $strComputer
Write-Host "Is PAE Enabled: " $isPAEEnabled.PAEEnabled 

Write-Host "Is /3GB Enabled: " | Get-Content C:\boot.ini | Select-String "/3GB" -Quiet  
# how can I change to search boot.ini file's contents on $strComputer

$smo = new-object('Microsoft.SqlServer.Management.Smo.Server') $strSQLServer
$memSrv = $smo.information.physicalMemory
$memMin = $smo.configuration.minServerMemory.runValue
$memMax = $smo.configuration.maxServerMemory.runValue


## DBMS
Write-Host "Server RAM available:       " -noNewLine
Write-Host "$memSrv MB" -fore "blue"
Write-Host "SQL memory Min:             " -noNewLine
Write-Host "$memMin MB " 
Write-Host "SQL memory Max:             " -noNewLine
Write-Host "$memMax MB" 

これを改善する方法について何かコメントはありますか?

前もって感謝します

4

1 に答える 1

1

使用できる boot.ini ファイルを確認するだけの場合Get-Content(資格情報に問題がない場合)

# create a test file with server names
@"
server1
server2
"@ | set-content c:\temp\serversso.txt

# read the file and get the content
get-content c:\temp\serversso.txt | 
    % { get-content "\\$_\c`$\boot.ini" } |
    Select-String "/3GB" -Quiet  

後でリモート コンピューターで実行するために必要なものを追加する場合は、基本的にリモート処理を使用する必要がありますInvoke-Command。最近、リモーティングに関連する 2 つのリソースが登場しました。

于 2010-03-08T05:57:43.333 に答える