shinke1987.net
雑多な備忘録等のはず。
他のカテゴリ・タブ
目次
PR

Windows PowerShell Tips

2017-05-10 2017-05-26

ポリシーについて

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
同一カテゴリの記事