tech.guitarrapc.cóm

C#, PowerShell, Unity, Cloud, Serverless Technical Update and Features

PowerShell

PowerShell 5.0 で搭載された using namespace シンタックスの概要

PowerShell から .NET クラスを呼び出して操作するときの最大の苦行。それが、クラスの名前空間を毎回毎回書かないといけないことです。 たとえば、List(T) を扱うとこうなります。無駄に使ってみましょう。 gist.github.com ジェネリクスの扱いつらぽよ。 I…

PowerShell ISE のオプションをPowerShell から操作しよう

言いたいことは一つだけです。font はお願いだから Consolas にしてくれ。 ということで簡単なネタを。

PowerShell 5.0 と Windows10 と RTM のリリースについて

Windows Management Framework 5.0 (WMF5.0) の ロードマップが PowerShell Team から公開されました。 Windows Management Framework (WMF) 5.0 Roadmap - Windows PowerShell Blog - Site Home - MSDN Blogs 一方で Windows 10 にはすでに WMF5.0 が載って…

NTFS の ACL (アクセス許可) をPowerShell DSC で制御しよう

Windows において、特定のフォルダのアクセス制御をするのはいくつか手段があります。 原則としては *nux 系と同様、ファイルシステム(NTFS) のアクセス許可 (ACL) を制御するのが楽でしょう。 今回は、NFTS のアクセス許可という刺身タンポポを卒業しようと…

Active Directory の GPO で ExecutionPolicy が設定されているとVS2015 RTM と VS2013 Update 5 において Package Manager Consoleでエラーが出る場合の対処

VS2015 RTM と VS2013 Update 5 がリリースされました。 さて、これらをActiveDirectoryに参加したWindowsで起動すると PackageManagerConsole の起動に失敗する場合があります。今回はこの対処。 Package Manager Console がここで停止するので、一切 Insta…

PowerShell v5 におけるPowerShellGet による Powershell Module の導入はどう変わるのか

久々に書きます。 「PowerShell に新しく関数やCmdletを入れたい。」 こうなった時、基本は Module を導入することになります。しかし v4までは、モジュールパスにファイルを配置する操作が手間で、開発者が WebClientでのダウンロードを提供したり、手動コ…

TopShelf によるWindowsサービスの配置をDSCで自動化してみよう

しばらく C# のみ触っており その中で LightNode + TopShelf を使ったセルフホストな Windows サービスを構築していました。 運用を自動化するために、CIでビルドした生成物を、どうやって本番にデプロイするのかが懸念となります。これを行うために 久々にD…

Windows Management Framework 5.0 Preview April 2015 がリリースされました

Windows Management Framework 5.0 は、PowerShell を コアとした機能です。ようは、PowerShell v5 と思ってもらえれば簡単ぽん? 今回のリリースは、これまでよりも確定した機能が多くいよいよ先がみえてきたのでさくっと見ておきましょう。

OneGet が PackageManagement に名称変更となります

ふと PR の通知を見ていると、OneGet が PackageManagement になるとのこと。 Merge WIP to Master by fearthecowboy · Pull Request #123 · OneGet/onegetgithub.com 作者の @fearthecowboy は 2015/3/24 時点でこれに触れています。 Nearly done my great …

PowerShell へのフィードバックは Microsoft Connect へ

Microsoft製品に関するフィードバックは、User Voice だったり Connect だったりいろいろありますね。 今回、PowerShell チームから公式にフィードバック先に関して記事があがったので確認しておきましょう。 Community Feedback and Microsoft Connect - Wi…

PowerShell Team の GitHub リポジトリへの開発移行 と DSC Res Kit の公開

久々に記事を書きます。 Microsoft は GitHub にて多くの製品を公開しています。中には CodePlex などから移行した Roslyn から、公開されてなかった MSBuild、そして DNX や ASP.NET まで。すごくうれしいですよね。そしてとても助かります。 github.com gi…

PowerShell も Windows Store Apps 同様に Windows.Security.Credentials namespace を使って認証情報を管理できるようにしてみる

以前、P/Invoke して Windows Credential Manager で PowerShell の認証情報を格納したり取得する簡単なモジュールを紹介しました。 実際これは、valentia を初めとして、認証を必要とするモジュールで使っています。 もっといい方法ないかなぁと、Windows S…

PowerShell で 関数実行結果の型をパイプラインの先に伝搬する

PowerShell といえば、型です。 文字列じゃなくて型。ということは、インテリセンスが何を使えるか教えてくれるわけです。インテリセンス使えないと辛いですよね。 自作の関数を作ったことがある人は多いと思います。でも、作った関数の出力結果がパイプライ…

PowerShell のString評価の方法と罠

以前 Gist にまとめていたんですが、記事にするのを忘れていたのです。 PowerShell は、文字列の中に変数を埋め込む時にいくつかの手法があります。でもその評価の違いって以外と知られてないようなので、まとめておきましょう。

PowerShell で オブジェクトの数を計測するんです?

オブジェクトの数を数える時によく使われるものといえば? Measure-Object でしょうか? System.Linq.Enumerable でしょうか? 今回はさらっとちょっとだけ見てみましょう。

PowerShell でTCP遅延Ack 設定を操作する

ネットワークチューニングの 1ついえば、TCP遅延ACK や Nagle ですね。 TCP遅延ACK - Wikipedia Windows ではどちらの設定も「レジストリを操作して再起動する」ことで調整可能です。 じゃぁ実際どうやって操作するか?TCP遅延Ackを操作するサンプルを紹介し…

Html Agility Pack と SgmlReader を使って PowerShell でスクレイピングしてみる

WebページのスクレイピングをPowerShell 単独でやるのはあまり楽しくありません。 が、C# で用いるように Html Agility Pack や SGMLReader を使えば楽に触れます。 今回は、 某ブログをこれらを使って少し見てみましょう。

PowerShell で System.Diagnostic.Process にて BeginOutputReadLine() を使う

PowerShell の罠Cmdlet といえば Start-Process ですね。 ほんとアレ罠。きらい。大っ嫌いです。 で、代わりに何を使うかっていうと、System.Diagnostic.Process クラスです。ふつーに C# で書くのと同じように挙動が想定通りなので安心です。 Process クラ…

CI を 用いない 自動Pullをしたくて PowerShell でCIする

なにか作ったので公開しておきましょう。

PowerShell DSC Advent Calendar 2014 : Day 13 PUSH と PULL の切り替え と MOF構成

これは、PowerShell DSC Advent Calendar 2014 - Adventar 13日目の記事です。 時空の歪みが観測でき(略 PUSH 飽きたので(おぅ、PULL にしましょう。というのは冗談ですが、実際PUSHで伝えることは伝えたのでもうありません。次はPULLです。

PowerShell DSC Advent Calendar 2014 : Day 12 あるべき状態と現在の差異を確認する

これは、PowerShell DSC Advent Calendar 2014 - Adventar 12日目の記事です。 時空の歪みが観測できてます? 今日は対象ノードをあるべき状態に収束させたことを確認してみましょう。

PowerShell で SelectManyもどきが欲しい

PowerShell では、IEnumerable[] は相性悪いわけですが、シーケンスを平坦にしたいものはしたく。 PowerShell の 標準出力の配列は展開される 特性を使うと、あたかもForeach-Objectが平坦化してるように見えますがびみょーんです。 なので、Zipに続き Selec…

PowerShell DSC Advent Calendar 2014 : Day 11 Configurationに記述したパスワードの暗号化

これは、PowerShell DSC Advent Calendar 2014 - Adventar 11日目の記事です。 時空のゆがみ。 さて、前回まででシンプルなコンフィグレーションをプッシュで反映させる方法を見てきました。 今回は、センシティブな情報。そう、パスワードをどうやってリモ…

PowerShell DSC Advent Calendar 2014 : Day 10 Push であるべき状態へ収束させる

これは、PowerShell DSC Advent Calendar 2014 - Adventar 10日目の記事です。 ん?時差が?気のせいです。 今日は対象ノードをあるべき状態に収束させる方法として PUSHモードを使います。

PowerShell DSC Advent Calendar 2014 : Day 9 Resourceの配置

これは、PowerShell DSC Advent Calendar 2014 - Adventar 9日目の記事です。 さて、9日目ったら9日目です。 今日はリソース(Resource) の配置です。標準のリソース以外の操作をしたくなったらこれですね!では見てみましょう。

PowerShell DSC Advent Calendar 2014 : Day 8 ConfigurationData を使ったロールや属性の指定

これは、PowerShell DSC Advent Calendar 2014 - Adventar 8日目の記事です。 7日目は、MOFファイルの生成について説明しました。コンフィグレーションの実行でMOFファイルがコンパイルされる。はい簡単です。 8日目の今日は、コンフィグレーションの実行時…

PowerShell DSC Advent Calendar 2014 : Day 7 MOFファイル の生成

これは、PowerShell DSC Advent Calendar 2014 - Adventar 7日目の記事です。 6日目は、コンフィグレーションの記述について説明しました。ベストプラクティスから現状のコンフィグレーションの問題、v5での改善点など多岐にわたっています。 今日は書いたコ…

PowerShell DSC Advent Calendar 2014 : Day 6 Configuration の記述

これは、PowerShell DSC Advent Calendar 2014 - Adventar 6日目の記事です。 5日目は、DSC のエンジンである LCM(Local Configuration Manager) について説明しました。 今日は、コンフィグレーション(Configuration)構文と記述について見ていきましょう。…

PowerShell DSC Advent Calendar 2014 : Day 5 Local Configuration Manager(LCM)というDSC のエンジン

これは、PowerShell DSC Advent Calendar 2014 - Adventar 5日目の記事です。 4日目は、DSC の2つのモード PUSH、PULL と利用シーンを説明しました。 今日はDSCのエンジンについてずらっとみてみましょう。シンプルですが大事な機能なので抑えておきましょう…

PowerShell DSC Advent Calendar 2014 : Day 4 Pull と Push

これは、PowerShell DSC Advent Calendar 2014 - Adventar 4日目の記事です。 3日目に、DSC の用語をChefと照らし合わせながら説明しました。 Chef が、CM ツールとして備える基本的な機能を DSC も備えていることが何となく見えましたか? さて4日目は、当…