しばたテックブログ

PowerShellを中心に気分で書いている技術ブログです。

PowerShell

Windows 7にPowerShell 6.0をインストールする

【2017/12/27追記】 最新のPowerShell 6.0 RC2での手順を別エントリに記載しました。 blog.shibata.tech インストール手順はこちらのエントリをご覧ください。 割と誰得なエントリです。 PowerShell 6.0のサポートしているプラットフォームにWindows 7があっ…

Visual Studio Code PowerShell拡張で使えるコマンドまとめ

前回、前々回に続いて今回はPowerShell拡張で利用可能なコマンドをまとめました。 各コマンドがどのバージョンから利用可能になったか調査するのが難しい部分があったため、単純に現在最新のバージョン(Ver.0.11)で利用可能なものをリストアップする形として…

Visual Studio Code PowerShell拡張の設定まとめ

前回のエントリでコードフォーマットに関する設定をまとめましたが、折角なのでほかの設定もまとめてみました。 stknohg.hatenablog.jp 今回説明する設定はすべてsettings.jsonの項目になります。 1. 拡張機能に関する設定 最初に拡張機能そのものに関する設…

Visual Studio Code PowerShell拡張で設定可能なコードフォーマットまとめ

Visual Studio Code PowerShell拡張のVersion 0.9からコードフォーマッターの機能が追加されコードの自動フォーマットができる様になりました。 marketplace.visualstudio.com 本エントリでは設定可能なフォーマットスタイルをまとめます。 以降で説明する設…

PowerShellの起動時に表示されるプロファイルに関するメッセージについて

小ネタです。 Windows 10などでPowerShellの起動時に以下の様なメッセージが表示され、プロファイルの読み込みにかかった時間が表示される場合があります。 パーソナル プロファイルとシステム プロファイルの読み込みにかかった時間は xxx ミリ秒です。 (英…

AppImage版のPowerShellが提供されました

PowerShell on Linuxの話です。 先日リリースされた PowerShell 6.0.0.Alpha17 からAppImageの実行バイナリが提供されました。 AppImageについて 公式サイトは以下。 appimage.org かつてklikやPortableLinuxAppsと呼ばれていたプロジェクトで、ディストリビ…

PowerShell on Linuxに普通にPSRemotingしてみる - その3

その1とその2の続き的な。 以前のエントリで書いた、 github.com のIssueがクローズされ、OMIおよびPowerShell on Linux OMI Providerがpackages.microsoft.comリポジトリからインストール可能になったので試してみました。 インストール 私が使い慣れている…

AdmxPolicyというPowerShellモジュールを公開しました

ちょっとしたきっかけから、AdmxPolicyというADMXファイルの中身を解析して各グループポリシーが使用するレジストリキーの値を取得するPowerShellモジュールを作ってみました。 ソースと基本的な使い方はGitHubに上げています。 github.com またPowerShell G…

Nano ServerにPowerShell 6.0をインストールする

公式に手順が追加されたのでまとめてみました。 公式な手順について 公式な手順はこちら。 github.com PowerShell 6.0のインストール 基本的にPowerShell 6.0のインストールはWindows 10/Windows Server 2016向けのZipファイルを展開するだけでOKです。 Nano…

PowerShellのSort-ObjectコマンドレットでIPアドレスのソートを行う

小ネタです。 orebibou.com こちらの記事を見てPowerShellでもやってみました。 サンプルデータ 元記事と同じデータ(test.txt)を使います。 192.168.0.102 192.168.0.8 192.168.0.97 192.168.0.68 192.168.0.99 192.168.0.66 192.168.0.24 普通のソート結果…

LinuxへのPowerShellのインストールが簡単になりました

先日PowerShell Blogで発表された内容について実際に試してみました。 blogs.msdn.microsoft.com packages.microsoft.comリポジトリ Ubuntu(apt)およびCentOS(yum)向けにMicrosoft独自のリポジトリhttps://packages.microsoft.comが提供され、このリポジトリ…

Visual Studio Codeで新規作成したファイルの言語モードを設定する方法

なんとなく試したら上手くいってしまったので。 現在のバージョン(Ver.1.9)では上手くいきましたが、今後新しいバージョンではできなくなるかもしれません... 【2017/04/06追記】Ver.1.11以降の方法 本日更新されたVer.1.11でsettings.jsonに新たにfiles.def…

Windows Management Framework (WMF) 5.1がリリースされました

長く苦しい戦いだった… 公式のアナウンスは以下。 blogs.msdn.microsoft.com 更新内容について リリースノートはこちら。 WMF 5.1の新機能ついてはこちらかこのブログの以下のエントリを参照してください。 WMF 5.1の新機能をざっくり説明する - 1. 新シナリ…

PowerShellのHashtableがコレクション扱いされない話

先日Twitter上でちょっと話題になってたのでメモを残しておきます。 PowerShellのHashtableはコレクション扱いされない こちらは割と既知の話で、 pierre3.hatenablog.com や winscript.jp にある通りPowerShellのHashtableはコレクション扱いされません。 …

Nano Serverのアップデートについて私的まとめ

元ネタはこちら。 blogs.technet.microsoft.com technet.microsoft.com 内容としては割とそのままで、正直なところ、ただの備忘録です。 2017/02/28ちょっと補足 本エントリでは更新するKBに、KB3199986とKB3206632を使用していますが、元ネタでは、 KB31769…

PowerShell温故知新、Monad Technology Blogについて

PowerShell Advent Calendar 2016 最終日のエントリになります。 qiita.com Monad Technology Blog Monadといっても、 モナドは単なる自己関手の圏におけるモノイド対象だよ。 なヤツではなくて、PowerShell開発時のコードネームのことです。*1*2 blogs.msdn…

メリクリ

メリクリ なにこれ? bannerコマンドのPowerShell版を作ってみました。 以前シェル芸人たちの間でbannerコマンドが流行ったことがありまして、 (下記リンク参照) togetter.com その際に@mattnさんがgobannerというGo言語のbanner実装を作りました。 github.c…

CLR/H #103 ~ クリスマス オブ ザ デッド ~ でPowerShellをふりかえりました

先日、通称カソウ化デイことCLR/H #103 ~ クリスマス オブ ザ デッド ~で「PowerShell 10年間ふりかえり」というタイトルでPowerShellについてお話させていただきました。 clrh.connpass.com 本エントリはPowerShell Advent Calendar 2016 18日目のエント…

PowerShellで入れ子のクラス(内部クラス)を示すには + を使う話

よく忘れるので備忘録としてメモっておきます。 内容に関してはPowerShell Blogの以下の記事のままです。 blogs.msdn.microsoft.com PowerShellで入れ子のクラス(内部クラス)を示すには + を使う PowerShell Blogの例ではNet.WebRequestMethods.Ftpクラスを…

PowerShell上でdockerコマンドの自動補完を行うposh-dockerモジュールについて

PowerShell Advent Calendar 2016 6日目の駆け込みに軽いネタを。 qiita.com はじめに Docker for Windowsのサイトを何か更新がないかと眺めていたら新しいモジュールが紹介されているのを発見しました。 docs.docker.com posh-dockerモジュール github.com …

はじめてのPowerShellモジュール公開

PowerShell Advent Calendar 2016 3日目の記事です。 qiita.com はじめに 先月簡単なPowerShellモジュールを作ってPowerShell Galleryで公開しました。 その際に公式なドキュメントが全然無く苦労したので本エントリで手順をまとめることにしました。 内容に…

Pesterでカスタムアサーションを行う

【2017/11/01追記】 Pester 4.0.5から正式にカスタムアサーションを行うことができる様になりました。 詳細はこちらのエントリをご覧ください。 blog.shibata.tech 【追記ここまで】 前回の続きというわけではないのですが... 元ネタはこちら。 kamranicus.c…

Pesterでパラメタライズドテストを行う

意外とドキュメントが無かったので*1ブログに書いておきます。 github.com テスト例 Gistに簡単な例を上げました。 これを見てもらえば言いたいことは一発でわかっていただけるかと思います。 Pesterでパラメタライズドテストを行うサンプル 実行結果はこん…

PowerShell 10 Year Anniversary Celebration Eventが開催されました

イベントから既に1週間以上経ってしまいましたが、個人的な備忘録も兼ねてブログ書きます。 PowerShell 10 Year Anniversary Celebration Event イベントはPowerShell 1.0がリリースされた日からちょうど10周年となる、2016/11/14の8:00 ~ 16:00(PST)*1にCh…

Windows10 Insider Preview Build 14971でPowerShellが既定のコマンドラインシェルになった話

すでに各所で日本語情報も出てますが、 blogs.windows.com の話です。 本エントリではPowerShellに絞った内容にします。 はじめに PowerShellが既定のコマンドラインシェルになるといってもコマンドプロンプト(cmd.exe)が無くなるとか、OSの挙動が変わるとい…

シェル芸勉強会の問題にPowerShellでチャレンジしてみた

きっかけはコレ。 togetter.com 最初はスルーしていたのですが、ふと良さげな実装を思いついたのでTwitterでこんなつぶやきをしてみました。 意外と愚直な手順でいけたのでやっぱり参戦w "響け!ユーフォニアム" | % {$c,$l=[Char[]]$_,$_.Length;for($i=0;$…

PowerShellでDockerを操作する方法についてあれやこれや

うまくまとめることが出来ず雑多な話になっています。 基本的にはWindows Server 2016およびWindows 10を対象としていますが、その他のOSも対象になる場合があります。 1. 変更されたDockerのインストール手順について 基本的にWindows Server 2016を対象と…

PowerShellのホストとプロファイルについてまとめ

PowerShellがオープンソース、マルチプラットフォーム化したのを踏まえ、改めてPowerShellのホストとプロファイルについてまとめてみました。 ホスト PowerShellにおけるホストとは簡単に言ってしまうとPowerShellの実行環境のことです。 基本的なホスト 従…

PowerShellでBOM無しUTF8を簡単に扱う、デフォルト設定を簡単に変える方法

【2017/11/06追記】 現在開発中のPowerShell 6.0からファイル出力に関わるエンコーディングの扱いが変わり、BOM無しUTF-8をより簡単に扱える様になっています。 詳細は以下のエントリを見てください。 blog.shibata.tech 【追記ここまで】 なんとなく思いつ…

符号化処理芸人たちのシェル芸をPowerShellで再現する

元ネタはこちら。 papiro.hatenablog.jp はじめに 私はシェル芸人ではないので大したことも面白いこともできませんのでご了承ください。 本エントリはシェル芸人たちの匠の技をPowerShellで再現するにはどうするかという点だけに注力しています。 PowerShell…