ポリシーについて
Bypassにしておけば、全部動く。
Set-ExecutionPolicy Bypass
コメント
#を使う。
# この1行だけコメントになります。
<# この1行目と 2行目がコメントになります。#>
関数
function 関数名 {
処理内容
}
この関数を呼び出すには、関数名を書けば良い。
オブジェクトのメンバー取得例
$UpdateCollection = New-Object -ComObject Microsoft.Update.UpdateColl Get-Member -InputObject $UpdateCollection
画面を全て削除
Clear-Host
ドライブ一覧を取得
Get-PSDrive
実行しているユーザ名を表示
Get-Content env:username
ネットワークドライブの追加
net use Z: \\サーバ名\ディレクトリ パスワード /user:ユーザ名
リモートでコマンドレット実行(自動ログオン)
$Pass = ConvertTo-SecureString -AsPlainText -Force "パスワード" $PSC = New-Object System.Management.Automation.PSCredential("ユーザ名", $Pass) $Temp = Invoke-Command -ComputerName コンピュータ名 { ls d:\ } -Credential $PSC Write-Host $Temp
リモートでローカルにあるスクリプトを実行
$Pass = ConvertTo-SecureString -AsPlainText -Force "パスワード" $PSC = New-Object System.Management.Automation.PSCredential("ユーザ名", $Pass) $Temp = Invoke-Command -ComputerName コンピュータ名 -FilePath ローカルにあるスクリプトの絶対パス -Credential $PSC Write-Host $Temp
リモートホストからのログオンを許可する
Enable-PSRemoting
ファイアウォールを設定するなら例外に「Windowsリモート管理」を追加すれば良い。
リモートホストにログオンする
$Pass = ConvertTo-SecureString -AsPlainText -Force "パスワード" $PSC = New-Object System.Management.Automation.PSCredential("ユーザ名", $Pass) Enter-PSSession -ComputerName コンピュータ名 -Credential $PSC
リモートホストのインストールされたHotFixを表示する
$Pass = ConvertTo-SecureString -AsPlainText -Force "パスワード" $PSC = New-Object System.Management.Automation.PSCredential("ユーザ名", $Pass) Get-HotFix -ComputerName コンピュータ名 -Credential $PSC