tech.guitarrapc.cóm

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

PowerShell

PackageMangement (a.k.a OneGet) の PowerShell 3.0 - 4.0 スタンドアローンインストール版について

PackageManagemtn(以下 OneGet) は、PowerShell 5.0 が含まれる WMF 5.0 (現在は ProductionPreview) で利用できました。つまり、Windows 10 以前の 7 SP1 / 8.1 では、WMF 5.0 を入れないとだめでした。 が、ようやく PowerShell 3.0 (WMF 3.0) と 4.0 (WMF…

#ComuPlus Comm Tech Festival 2015 のセッション資料公開

@ufcpp さんにお話しをいただいて Comm Tech Festival に参加してきました。 comuplus.doorkeeper.jp セッション資料をここで公開します。

VisualStudio の .csproj でビルド構成に依存せずApp.config のConfiguration Transformを行おう

Visual Studio で C#など を書いていると、データベースの接続設定などアプリケーションで利用する値を外部ファイルに外出ししたくなることが多々あります。この時利用するのが アプリケーション構成ファイル App.config です。 方法: C# プロジェクトにアプ…

Azure Web App のカスタムデプロイを使って特定のディレクトリをGithubと同期する

Azure で一番好きなサービスはダントツで Web App です。以前は Azure WebSite と呼ばれていました。やりすぎず、でも必要なことはできる。このバランス感が今でも崩れていないのはすごいです。 さて、Azure は各種SCM からのデプロイをサポートしており、そ…

そろそろ PowerShell の一次配列の罠と回避について一言いっておくか

タイトルは一度行ってみたかっただけです、生意気言ってごめんなさい。 他の言語同様、PowerShell にも一次配列があります。こんなやつ。 gist.github.com PowerShell は、型を持っているので Object[] 以外にも 型[] などなどあるのですが、他言語から見る…

PackageManagement (aka. OneGet) の プライベートパッケージソースを NuGet Server で立ててみよう

OneGet では、パッケージの取得先のことを パッケージソース (PackageSource)と呼びます。OneGetにはデフォルトで2つのパッケージソース(PackageSource) が入っています。*1 Get-PackageSource Name ProviderName IsTrusted IsRegistered IsValidated Locati…

PackageManagement (aka. OneGet) の利用時の簡単な注意

Windows 10 でデフォルトで入っている PowerShell v5 からは、PackageManagement(以降 OneGet と称しておきます) が利用できるようになっています。*1 OneGetですが、知らないともどかしい気分になることが多いので少し情報を整理しましょう。 なお、ここで…

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