Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PowerShell for LL Users

PowerShell for LL Users

LL好きにおすすめ: こんなこともできるWindows PowerShell

LLまつり2013で発表した資料です。
資料中のコードはWindows7標準搭載のPowerPoint ISEで実演しました。

Avatar for Tak Yanagida

Tak Yanagida

August 24, 2013
Tweet

More Decks by Tak Yanagida

Other Decks in Programming

Transcript

  1. こんなこともできる Windows PowerShell (株) オンターゲット 柳田 岳洋 @tyanagida LL好きにおすすめ *

    当ファイルではコード部分に、Inconsolataというフォントを使っています。インストールされて いないPCでは、表示がずれることがあります。
  2. PS> ls PS> ls | sort PS> ls | sort

    –Property Length PS> $res = ls; $res.GetType() PS> $res[0].GetType() PS> $res[0] | Get-Member PS> $res[0].GetFiles() PS> $res[0].CreationTime 実際にISEで試してみる
  3. できること(1):アプリの操作 • Outlookの例 PS> $ol = New-Object -ComObject Outlook.Application PS>

    $ol.Session.Folders[1].Name PS> $ie = New-Object -ComObject InternetExplorer.Application PS> $ie.Visible = $true PS> $ie.Navigate(“http://www.yahoo.co.jp/”) • InternetExplorerの例
  4. できること(2):画面キャプチャ Add-Type -AssemblyName System.Drawing function screenshot([Drawing.Rectangle]$bounds, $path) { $bmp =

    New-Object Drawing.Bitmap -ArgumentList $bounds.width,$bounds.height $graphics = [Drawing.Graphics]::FromImage($bmp) $graphics.CopyFromScreen($bounds.Location, [Drawing.Point]::Empty, $bounds.size) $bmp.Save($path) $graphics.Dispose() $bmp.Dispose() } PS> $rect = New-Object Drawing.Rectangle –ArgumentList 100,100,400,300 PS> Screenshot $rect tmp.png
  5. できること(3):Windowの操作 function Set-ForegroundWindow($hwnd) { $sig = @' [DllImport("user32.dll")] public static

    extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); [DllImport("user32.dll")] public static extern bool SetForegroundWindow(IntPtr hWnd); '@ Add-Type -MemberDefinition $sig -name NativeMethods -namespace Win32 [Win32.NativeMethods]::SetForegroundWindow($hwnd) } PS> Set-ForegroundWindow (Get-Process Outlook).MainWindowHandle
  6. 参考文献(2): 使う人用 • PowerShell in Action (2nd. Ed.)  演算子、制御フローから

     COM操作、.NET Framework活用まで  和訳は1st. Editionのみ  英語版はePub, PDFもあり http://www.manning.com/payette2/
  7. 参考文献(2): 使う人用 • PowerShell in Action (2nd. Ed.)  演算子、制御フローから

     COM操作、.NET Framework活用まで  和訳は1st. Editionのみ  英語版はePub, PDFもあり http://www.manning.com/payette2/ PowerShellの作者の本
  8. One of the earliest successful scripting environments was something called

    Tool Command Language/Tool Kit (TCL/TK). PowerShell in Action 2nd. (p.743) (和訳) 最初期に成功したスクリプト言語環境の1つは、Tcl/Tkと呼ばれ るものだった。
  9. One of the earliest successful scripting environments was something called

    Tool Command Language/Tool Kit (TCL/TK). PowerShell in Action 2nd. (p.743) (和訳) 最初期に成功したスクリプト言語環境の1つは、Tcl/Tkと呼ばれ るものだった。 友達になれそう!!