tech.guitarrapc.cóm

Technical updates

2013-09-01から1ヶ月間の記事一覧

PowerShell で フォルダの容量一覧を取得したい

ドライブ容量は簡単ですね。 cim でも wmi でもいいでしょう。 さて、ドライブの次はフォルダ容量を調べてみましょう。 特に多くの場合は、 容量を調べる = どのファイル/フォルダが原因かを調べるため なので大事です。 では、見てみましょう。 目次 目次 …

PowerShell による デプロイ ライブラリ "valentia" β版 の公開

謎社 での 私の責務の1つが Linux から Windows 環境に移行時に、デプロイ環境を低下させることなく維持、向上、移行することでした。 (今もですが 今回、その案件に対応すべく制作した PowerShell による CUI デプロイモジュール valentia β版を公開します…

PowerShell で Profile を利用して スクリプトの自動読み込みをしてみよう

PowerShellを起動したら、特定のコマンドを自動実行してほしい。 時にはこのような希望があるかと思います。 いわゆる、bashなどでいう bash_profile 的なモノですね。 PowerShell にも profile な考えは存在していますので、紹介しましょう。 目次 目次 参…

PowerShell で System.Collection.Generics.List を扱ってみる

PowerShell で Generic なクラスを扱う場面は少ないと耳にします。 目次 目次 使わない理由: PowerShellは動的型付け Genericを使う理由 : 厳密に型チェックしたい PowerShell で Listを扱う List の生成 Syste.Correction.Generic の生成をCmdlet風に行う L…

PowerShell の +=演算子 パフォーマンス と その回避方法

配列や文字列対する += 演算子 +=演算子 で 文字列の追加を行う場合に、PowerShell の @() による Array は固定長なので配列をいちいち作り直します。 += 演算子 での操作であれば ArrayList や List でも変わりません。 これを回避するには、 +=演算子 では…

PowerShell の Test-Path -IsValid が謎くて使えない

よく利用される、Test-Path は対象のパスが存在するかどうかを検知します。 このTest-Pathには、-IsValid スイッチがあります。 この IsValid でファイルパスのバリデーションをしようとすると、謎に巡り合えます。 目次 目次 TechNet を見よう 構文としてパ…

PowerShell で テキストファイルとファイル名をマッチングして変更してみよう

ファイル名がただの連番になってしまった時に、まとめて名称を変えたいと思う機会がありました。 PowerShell で気軽にさくっと書けますよアピールということで。 目次 目次 どんな状態なのか 元のファイル名 変更後の名前 マッチング 変更スクリプト 説明 新…

Windows 8.1 RTM と Windows Server 2012 R2 で win + x のシェルを コマンドプロンプトから Windows PowerShell に変更する

Windows 8.1 Preview や Windows Server 2012 R2 Preview を触っていた人は PowerShell が Win + x のメニューでデフォルトになっているのを見て喜んだことでしょう。 しかし、 Windows 8.1 RTM や Windows Server 2012 RTM を見ると、Windows 8 / Windows S…

Hyper-V で Windows Server 2012 R2 環境を作ってみよう

Windows Server 2012 R2 が Microsoft Subscription で利用できるようになりました。 Windows Server 2012 R2 Azure や AWS EC2 で利用するのもいいのですが、 今回は 手元の Windows8.1 Pro で Hyper-V 環境を構築し Windows Server 2012 R2 をインストール…

Opera 17 Next と Opera 12.x の違いをみてみよう

Opera が Presto を諦めて Chronium ベースになっても Operaの良さを失わないで欲しい..... また、愛用者としてはどう使っていくかを検討する時期が近づいています。 今回、現実として Opera 12 と Opera 17 Next では機能的な違いがあるため、軽く見ておき…

WordPress.com から はてなブログに移行した理由と移行作業

2012年11月に PowerShell に関して記事を書き初めて 10ヶ月経っていました。 はじめてのはてなブログ記事は、「WordPress.com から はてなブログに移行した理由と移行作業」です。 目次 目次 移行した理由 1. Markdown 記法で書きたい*1 2. はてな流入数が多…

PowerShell で ファイルの File Lock Status を取得したい

PowerShell で Rename-Item や Copy, Move, Remove など、各種操作を行う際に必須となるのが、 そのファイルが File Lock されているかどうかの確認です。 システム管理の一環として、ファイルの処理は欠かせないので 使う場面は多いはずです。 さて、PowerS…

PowerShell における Windows Workflow Foundation 4.0 (WF) 利用のすすめ

Windows PowerShell での並列実行 というと、 PipeLine処理かWorkflow が利用しやすいところです。 また、 Workflow は通常の Implicit Scripting と異なり、 manageな仕組みです。 Workflowは Windows PowerShell だけでは困難な 長時間にわたるスクリプト…

PowerShell の Moduleインストール用スクリプトを作ってみた (続き)

以前、PowerShell Module を GitHub などから Clone した後に、 User Moduleパスにインストール (要はコピー) するスクリプトを公開しました。 PowerShell の Moduleインストール用スクリプトを作ってみた 前回のスクリプトは MS TechNetのやり方に沿ってち…

SumoLogic API 操作 PowerShell Module を更新しました

SumoLogic については、以前も紹介しました。 SumoLogic API を PowerShell で利用する 今回 いくつか function を追加しました。 これで、Coillector と Source に関しては、大体の操作が PowerShell でできるかなーとか。 ==== Repository GitHub Reposito…

PowerShell で WorkGroup 環境の Windows User ユーザーフラグを変更する

WorkGroup 環境 で PowerShell を使って Windows User のユーザーフラグを変更するのは[ADSI] を参照する必要があるため記事に起こしておきましょう。 これで AD 環境じゃなくてユーザー管理がということも少し減るかもですね。 今回は、 既存ユーザーの ユ…

Windows Azure The Diagnostic Utility が公開されています

先日 26/Aug/2013 に Azure Team が実際に利用しているいう、 Azure Tools - The Diagnostic Utility が一般公開されました。 是非Azure に限らず使えそうなのでご紹介を。 (AWS での利用を念頭に見てみましょう) ダウンロード 以下のCmdlet を PowerShell …

PowerShell ISE で psedit を用いてコンソールから直接ファイルを開いて編集する

bash や zsh など では、 vim hoghogepath や emacs を使ってファイルの編集が可能です。 PowerShell ではどうなのか。 powershell.exe では出来ませんが、 powershell_ise.exe を使っているときは、psedit コマンドで、コンソールにそのファイルを開いてす…

PowerShell の ps1 ファイルは 何故 1なのか

良くある疑問だと思いますが日本語での説明が見当たらないので、 Twitter で説明していましたが記事にしておきます。 そういえば PowerShell の拡張子の ps1 の 1 ってなんだろう。 psh ではだめだったのか。 — kos59125 (@kos59125) September 5, 2013 理由…

GitHub における PowerShell の トレンド

GitHub の Trend で PowerShell が少しずつ増えていますね。 今回はその確認とか。 トレンドの確認 ここで確認ができます。 Trending PowerShell repositories on GitHub today まだまだ少ないとはいえ、 少しずつ増えています。 特に chocolatey と posh-gi…

PowerShell で パラメータ入力を必須にしたい

function の paramter を必須入力にしたい。 いくつかやり方はあります。 しかし PowerShel V1.0 の頃の情報が何故かいまだに見受けられるので記事にしておきます。 PowerShell V1.0では デフォルトで、throw しちゃうのですね。 function hoge{ Param ( [st…

PowerShell で スケジューラタスク(SchedulerTask) を操作する

タスクスケジューラは、現在でもGUIで設定している方が多いですね。 一台や二台にやるならいいのですが、 10台、100台の時はどうするのかなー、とか思います。 Linux には、いうに及ばず cron があります。 Windows には、 Windows XP, 2003 以降 schtasks.e…

PowerShell で TCP/IP 接続監視をしたい

前回、 netstat が PowerShell では オブジェクトとして取得できることを紹介しました。 PowerShell で netstat をするにはどうするの この記事では単純に Group-Object した結果として、状態に応じてグルーピングしましたが、今回はログ監視として横に並べ…

PowerShell で Active Directory のユーザー 属性 (User Attribute) を取得する

Active Directory はWindows Server 2012から いよいよ PowerShell での管理が主体となっています。 旧来のコマンドは非推奨となり、多くの情報が .NET をベースに PowerShell で操作可能です。 さて、今回はユーザー属性を ユーザー名から取得する際のコマ…