■このサイトはPowerShell(MSH/Monad)奮闘記です
管理人「newpops(吉岡洋)」が「PowerShell(旧名:MSH/Monad)」の研究結果を日々綴っていきます。
【お知らせ】
この日記からPowerShellのTipsを抽出し「PowerShell FAQ」として整理しました。
2006-09-27
■[PowerShell][IronPython]PowerShell from IronPython Part 2
PowerShell from IronPython - PowerShell Memoの続き。
今回はサンプルの使い方です。
STEP1:サンプルのダウンロード
「IPPowerShell」がサンプルを含んだディレクトリです。今回は「C:\IPPowerShell」に解凍しました。
STEP2:powershell.pyを読み込む
コマンドプロンプトで「C:\IPPowerShell」をオープン。以下を実行して「powershell.py」を読み込みます。
C:\IPPowerShell>ipy.exe -i powershell.py Run 'dir(shell)' to get a list of available PowerShell commands! In general, IronPython PowerShell commands are accessed using the form: shell.get_process("cmd").select(First=2)
ここまでで、PowerShellを利用する準備は整いました。
STEP3:PowerShellを利用する
Cmdletを実行するには「shell.」に続けてCmdletを記述します。
ただし、NounとVerbの間の「-(ハイフン)」は「_(アンダーバー)」に置き換える必要があります。
以下にサンプルを示します。
STEP4-1:Cmdletの利用
「Get-Process」を実行する
>>> shell.get_process() Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 100 5 1280 3640 35 0.03 2836 alg 208 11 15304 2348 106 5.59 3088 B2 773 47 27912 42560 154 39.33 1580 CCAPP (中略)
STEP4-2:Cmdlet(引数付き)の利用
「Get-Process ipy」を実行する
引数を渡す場合は、以下のよう記述します。
>>> shell.get_process("ipy") Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 422 14 40016 40152 183 4.42 748 ipy
STEP4-3:Cmdlet(キーワードパラメータ付き)の利用
「Get-Date -DisplayHint date」を実行する
>>> shell.get_date(DisplayHint='date') 2006年9月27日
STEP4-4:パイプの利用
「Get-Process ipy | ConvertTo-Html」を実行する
パイプを利用する場合は「.(ドット)」で区切ってコマンドを続けて記述します。
>>> shell.get_process("ipy").convertto_html() <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/s (中略)
STEP4-5:配列の要素へのアクセス
「Get-Process ipy | Select-Object -First 1 -Property WS」を実行する
「ipy」プロセスを取得。パイプを通して1つ目のオブジェクトの「WS」プロパティを表示するコマンドです。
IronPython上で実行するには、「[](配列)」を利用します。
>>> shell.get_process("ipy")[0].WS 41107456
トラックバック - http://d.hatena.ne.jp/newpops/20060927/p1
リンク元
- 3 http://www.google.co.jp/search?sourceid=navclient-ff&ie=UTF-8&rls=GGGL,GGGL:2006-11,GGGL:ja&q=powershell
- 2 http://d.hatena.ne.jp/keyword/C#
- 1 http://cs.albis.jp/blogs/ms-18e/archive/2006/07/19/281.aspx
- 1 http://cs.albis.jp/blogs/ms-18e/default.aspx?p=2
- 1 http://d.hatena.ne.jp/perezvon/edit?date=20060928
- 1 http://images.google.com/imgres?imgurl=http://newpops.main.jp/wiki/monad/pukiwiki.php?plugin=attach&pcmd=open&file=IronPython_Sample.jpg&refer=Temporary&imgrefurl=http://d.hatena.ne.jp/newpops/20060108&h=300&w=300&sz=6&hl=en&start=12&tbnid
- 1 http://search.yahoo.co.jp/bin/search?p=powershell
- 1 http://search.yahoo.co.jp/search?p=PowerShell&ei=UTF-8&fr=top_v2&x=wrt&meta=vc=
- 1 http://sru.ikejisoft.com/?チュートリアル
- 1 http://www.bloglines.com/myblogs_display?sub=22598664&site=3243177