PowerShell

久しぶりのPowerShell

イベントログを取得する。 フィルタにて。 $xml = @' <QueryList> <Query Id="0" Path="Security"> <Select Path="Security">*[System[TimeCreated[@SystemTime&gt;='2010-10-14T15:00:00.000Z' and @SystemTime&lt;='2010-10-21T15:00:00.999Z']]]</Select> </Query> </QueryList> '@ Get-WinEvent -FilterXml $xmlXMLにフィルタを記述します。 GUIでフィル…

別サーバーからイベントログを取得 の続き

前回の続き。 時間を指定して、イベントログを取得するです。 $dt = [System.DateTime]::Today $dt = $dt.ToUniversalTime() $dt = $dt.AddDays(-1) $sql = "select * from Win32_NTLogEvent where (Logfile='Application' AND (EventType=1) AND TimeGenera…

別サーバーからイベントログを取得

頑張って書いてみました。 gwmi -Query "select * from Win32_NTLogEvent where (Logfile='Application' AND (EventType=1) -computer コンピュータ名 -credential アカウント名 | select messege"な、感じです。パスワードを求められますので。 これはV1で…

Windows PowerShell 2.0

RTMになったのは知っていたんだけど、まだ入れていない。 http://technet.microsoft.com/ja-jp/windows/dd320288.aspx 入れたいな! 1.0は削除しないといけない。 最近、ブログが書けなくなっている。

Invoke-Item

他のプロセスを起動するのに Invoke-Item がありますが、 引数を渡せないのがちょっとですね。 Invoke-Expression があるんですね。 これなら、引数を渡せます。 Set-Alias を使うのが自分の好みになってます。 Invoke-Item c:\windows\system32\calc.exe In…

Get-ChildItem

Get-ChildItem で Include がうまく指定できなかった。 Get-ChildItem C:\xx\xx -Include *.exe,*.dllで何も表示されない。 Get-ChildItem C:\xx\xx -Exclude *.exe,*.dllなら、ちゃんと除外して表示されていた。 う〜ん、なんでだろとずっと悩んでいた。 ス…

Yes or No を選択

バッチファイルで Yes or No を選択するのがありますよね。 PowerShellではどうするのだろうと。 MessageBox でやるとするとどうなるのか試してみた。 function MessageBoxYesNo([string]$msg) { [void] [Reflection.Assembly]::LoadWithPartialName("System…

ファイルを書き換える - その2

昨日の続き 同じファイルを書き換えるのに挑戦した。 function global:WriteFile([string]$fileName) { $list = Get-Content $fileName $stream = New-Object IO.StreamWriter $fileName ForEach ( $line in $list ) { $rec = $line.SubString(1 , $line.Len…

ファイルを書き換える

ファイルの中身がこんな感じ "12345" "ABCDEFG" "あいうえ"になっている。「"」を削除したい。 文字列の先頭と最後に必ずある前提。 PowerShellで書いてみました。 function global:WriteFile([string]$orgFileName, [string]$desFileName) { $stream = New-…

PowerShell Provider for IIS7

http://blogs.technet.com/hirookun/archive/2008/09/22/3126597.aspx こちらに紹介されてますが、Provider for IIS7 をちょっと試してみました。 IIS 7 では使えそうです。 ただ、アドインのようなものなので本番機にいれられるどうか微妙。 PowerShell2.0 …

例外

今日、PowerShellを見ていたら、例外補足がでていた。 これが、おおという感じだった。 Trap [例外クラス名] { } なんとかかんとかと書いておくと、どこで起きた例外でも捕まえることができる。 それから、PowerShellが更新された。 ダウンロードして入れよ…

IISをPowerShellで

$iistest = [ADSI] "IIS://localhost/w3svc/1/root/WebTest"これでIISの情報がとれた。 IISに仮想ディレクトリの作成などがPowerShellでできそうだ。 がんばるぞ!http://blogs.technet.com/stanabe/archive/2008/05/16/windows-powershell-scriptomatic-rel…

UpdateCopy の続き

以前に、UpdateCopyするスクリプトを書きましたが、訂正と追加があります。 訂正分ですが、UpdateCopyに失敗する場合がありました。 コピー先にファイルが存在していないと、絶対パスに変換時エラーになります。 param([String]$srcfile, [String]$dstfile)#…

PowerShell で IIS7.0 を

http://learn.iis.net/page.aspx/434/making-simple-configuration-changes-to-web-sites-application-pools-web-applications-and-virtual-directories 後で読むぞ。 バーチャルラボでも、IISのサイトをPowerShellで作るのをやってみた。 全部用意されてい…

ExecutionPolicy

スクリプトを実行できるか確認したい。 $policy = Get-ExecutionPolicy $policy.Equals([Microsoft.PowerShell.ExecutionPolicy]::Unrestricted)これでTrueが返れば、スクリプトは何でも実行可。 でも、上記をスクリプトにしているなら、すでにスクリプトはO…

UpdateCopyするスクリプト

param([String]$srcfile, [String]$dstfile)$srcfile = Convert-Path $srcfile $dstfile = Convert-Path $dstfile[System.IO.File]::SetAttributes($srcfile, "Normal") if ([System.IO.File]::Exists($dstfile)) { [System.IO.File]::SetAttributes($dstfil…

ファイルコピー

Copy-Item .\xxxx\* .\xxxx -Include *.zipでファイルコピーしてみた。 うまくいくじゃんと思ってたが、読み取り専用属性がついていたらコピー失敗だ。 調べてみた。属性がついてもコピーができないか。 う〜ん、できないみたい。 属性を変更することはでき…

GACへ登録

アセンブリをGACへ登録するスクリプトを書いてみる。 Set-Alias gacutil "C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\Gacutil.exe" $filename = ".\ファイル名" foreach ($line in (Get-Content $filename)) { gacutil -if $line }登録す…

SMO で DataBase 接続

[reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Smo") $Server = new-object Microsoft.SqlServer.Management.Smo.Server "コンピュータ名\インスタンス名" $Server.ConnectionContext.LoginSecure = $false $Server.ConnectionContext.L…

PowerShellのエディタ

http://forums.microsoft.com/TechNet-JA/ShowPost.aspx?PostID=2105576&SiteID=36 で、MSの方がエディタを紹介されてました。 「EmEditor」「PowerShell Analyzer」が有料のようです。 「Vim」「PowerGUI」がたぶん無料みたいです。 後で、試してみようと…