仕事でPowerShellスクリプトを書く事がかなり多くなってきた事もあり、テストちゃんと書きたいなーと思ってPesterを知る。

ちょっと違和感あるけど、悪くない感じ。

毎月、月が変わったら、先月分の撮りためた写真と動画を実家の家族におくっています。やり方は色々な物を試したのですが、結局Dropboxを実家のPCにもセットアップして、Dropboxフォルダ内に数カ月分だけ保持、同期することにしています。

でも、これだと、デジカメの性能が上がってファイルサイズが重くなってきた関係で全てのファイルを保持できなくなってきてしまいました。なので、画像のリサイズ処理も入れるようにしました。月に一度とはいえ、縮小して、コピーして…ということをするのが面倒なのでPowerShellでスクリプトを書きました。リサイズにはImagemagicを使ってます。

これで一応意図した動きをしているのですが、いかんせん写真の容量を下げても動画の容量が大きすぎる、ということがあるので、動画の再圧縮もしたいな、というところです。コマンドラインベースで変換出来るものも探せばあるだろうと思うので、探してみようと思います。もしもいいものを知っていたら教えてください!

#-----------------------------------------------------------------
#作業対象フォルダ(基本先月分を処理)
$targetmonth = (get-date).addmonths(-1).tostring("yyyyMM")

1件のコメント

昨日教えてもらったのですが、PowerShellの開発にはPowerGUI Script Editorがものすごく便利そうです。インテリセンスあり、デバッグあり…。なんで今まで気がつかなかったんだろう?

単純にPowerShellスクリプト終了時に「Exit 1」のようにしてあげれば返せるかと思いきや、「Exit 2」でも「Exit 100」でもすべてerrorlevelは1になってしまいます。

きちんと2以上の値も返したければPowerShellコマンドのcommandオプションでスクリプトを実行させたうえで、「exit $LASTEXITCODE」としてあげればいいそうです。具体的には以下のように。

powershell -NoProfile -command ".\hoge.ps1;exit $LASTEXITCODE"

元ネタはこちら。

昨日、今日と社内の勉強会用にPowerShellの入門的な事柄をPPTにまとめて書いてました。うん。このくらい理解できればわかった気になれるだろうな、というくらいにはまとめられた気がします。

PowerShellは短いコマンドをちょっとつなぐだけでかなり素敵なことができるから、Windowsを管理する人は是非マスターすべきだと思う。

仕事に関連する情報はほとんどまとまった体系的な情報がネット上になくて苦労するんだけど、プログラミング系のことはネット上に情報が多くて助かる・・・。

1件のコメント

[exchange][programming][script] Exchange Server 2007のキュー監視をPowerShellスクリプトで

先日、要望があったので、Exchange Server 2007のキュー監視をPowerShellで行うスクリプトを試しに書いてみました。PowerShellでのスクリプト作成はほとんどやったことがないので、色々と試行錯誤をしながら。

配列に対して配列を追加していく際に、2次元配列になることを期待していたのに1次元の配列になっていて、それに気がつかずに混乱したり、変数を初期化しているつもりなのに正常に初期化されず以前の結果が表示されて混乱したりしましたが、基本的なところはおおよそ理解できた気がします。

PowerShellで普通に書くことのできる記法やコマンドをスクリプト内で直接使えるので、すごく記述量が少なくて幸せです。.Net Frameworkのクラスも直接扱えるし、もうVBScriptやJScriptではスクリプトを書きたくなくなってしまいました。

PowerShellお勧めですよ。あとはどれだけ普及してくれるかですね。Vistaに標準搭載じゃなかったのは痛い・・・。(VBScriptやJScriptでスクリプトを書くのはそれがほぼ全ての端末で動作するからなので)

2件のコメント

PowerShellのスクリプトを作成するIDEとしてPowerGUIというものを見つけました。結構便利そうです。

PowerShellベースになって、コマンドラインでできるようになって便利!やった!・・・と私は感じているのですが、周りの人に話を聞いて見ると、GUIでできないことが増えてしまって非常に厳しい・・・という声が多いようです。

そういった人にはお勧めできるのではないでしょうか。とはいっても、やはり色々知識がないと使いこなせないとは思いますが・・・。