ポリシーについて
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