素敵なおひげですね

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

PowerShell

次期Nano Server(Version 1709)のPowerShellについて

元ネタはこちら。 docs.microsoft.com blogs.technet.microsoft.com 次期Windows ServerおよびSemi-annual Channelについては山市さんがサクッとまとめてくれています。 yamanxworld.blogspot.jp 次期Nano Serverはコンテナ専用になる話 今年の9月リリース予…

Windows 10 Creators UpdateでSQL*Plusを使うと日本語が文字化けする件について

【2017/06/05追記】 本現象は先日出た累積更新(KB4020102)で解消されています。 【追記ここまで】 きっかけは @masaru_b_cl さんのこのツイートから。 SQL*Plusが出力する日本語が、Windows 10の新コンソールだと文字化けする……なんだこれ?— 白い高野さん (…

PowerShell 6.0のBeta版がリリースされました

公式の案内はこちら。 blogs.msdn.microsoft.com GitHubのマイルストーンにあった通りBuild 2017に合わせる形のリリースとなりました。 インストールおよびアップデート GitHubから最新のインストーラーをダウンロードして上書きインストールするか、Linux環…

Windows 10でロードアベレージを取得する?

小ネタです。 ふと、「Bash on Ubuntu on Windowsを使えばWindowsでもロードアベレージを取得できるよなぁ…」と思ったので実際に試してみました。 Windowsのロードアベレージ www.atmarkit.co.jp 上の記事に詳細が説明されていますが、WindowsではUNIXやLinu…

Pester 4.0での新機能・変更点まとめ

元ネタはこちら。 github.com そろそろPester 4.0のリリースも近づいているかなと思い、新機能や変更点をざっくりとまとめてみました。 Pester 4.0のインストール 現時点での最新版はVer.4.0.3(Release Candidate扱い)となっており、PowerShell Galleryから…

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

割と誰得なエントリです。 PowerShell 6.0のサポートしているプラットフォームにWindows 7があったので実際に試したところ意外とハマったので記録を残しておきます。 インストール方法について github.com Windows 7向けのPowerShell 6.0(現時点ではAlpha 17…

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.defau…

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…

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でカスタムアサーションを行う

前回の続きというわけではないのですが... 元ネタはこちら。 kamranicus.com はじめに 大前提としてPester標準の機能としてカスタムアサーションを行うことはできません。 本エントリでは、元ネタにある通りPesterの内部動作をハックすることでカスタムアサ…

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を簡単に扱う、デフォルト設定を簡単に変える方法

なんとなく思いついて試したら意外といい感じになったので。 はじめに PowerShellのUTF8はBOM付きUTF8 PowerShellにはOut-File等といったファイルを簡単に扱うためのコマンドレットがいくつか存在します。 たとえばOut-FileでUTF8のファイルを出力する場合は…

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

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

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

以前のエントリ、 stknohg.hatenablog.jp でソースからのビルドは面倒だからやらないと言ったのですが、気が変わりました。 というのも、 github.com のIssueがCloseされmasterブランチに取り込まれたとのことで、次のバージョンのリリース前にその結果を確…

PowerShell DSC for Linuxを試す

そろそろ試しておかないといけないかなと思ったので。 正直PowerShell DSCはまだまだ勉強不足なのでおかしなところがあるかもしれませんがそこはご容赦ください。 PowerShell DSC for Linuxとは github.com 名前の通りLinuxでPowerShell Desired State Confi…

PowerShellコンソールの表示色についてのちょっとした話

ちょっと面白いIssueを見つけたので。 github.com このIssue自体は以下の様に前景色にDarkYellowを指定した場合に表示される色がおかしいというものです。 Write-Host '████████' -ForegroundColor DarkYellow 確かにWindowsで試すと下図の様に黄色ではなく…

PowerShell on Linuxに普通にPSRemotingしてみる

ある意味前回の続き的な。 注意事項 一応PSRemotingできるのは確認しましたが、まだアルファ版なので動作が超不安定です。 実際に使える様になるのはまだまだ先になりそうな感じです。 OMI ServerとPowerShell on Linux OMI Provider WindowsのPSRemotingで…

PowerShell Remoting over SSHを試す

PowerShell on Linux(Mac)が公開された際の新機能の一つにSSHによるPSRemoting(PowerShell Remoting over SSH)があります。 本エントリではこの機能を試してみます。 PowerShell Remoting over SSHとは ドキュメントでの表記がPowerShell Remoting over SSH…

PowerShell on LinuxをDocker上で試す

試した系の記事は既に多くの方がやっていますが、自分も一つくらいは書いとかないといけないかなと思ったので。 インストール手順 ぶっちゃけインストール手順はGitHubに載ってるのでそれを見れば十分です。 実のところ、わざわざこんなエントリ書く必要も無…

Windows 10のコンテナーとDocker for Windowsを共存させる

いろいろあってちょっと遅くなりましたが stknohg.hatenablog.jp の続きです。 2016/10/18 追記 バージョン 1.12.2 Bata26よりDocker for Windowsにdockerd.exeが同梱される様になりGUIでDocker Engineの切り替えができる様になりました。 stknohg.hatenablo…

PowerShell on Linux(Mac)でShift-JISを扱う

つい先日PowerShellがオープンソース化、クロスプラットフォーム化されてとてもうれしい限りです。 github.com この件について思うところは結構あるのですが、情報が多くてまだ自分のなかで考えをまとめきれていません( 考えがまとまったらブログに書こうと…

Windows 10のコンテナーとDockerを試す

Anniversary Update(1607)が来てWindows 10でもHyper-Vコンテナーの機能が使える様になったので早速試してみました。 注意事項 本エントリは2016/08/05に公開後、2016/09/28に最新の情報に基づいて全面的に書き直しています。 2016/10/18 追記 Docker for Wi…

PowerShellの起動時に読まれるps1xmlファイルについて

最高に誰得なエントリです。 PowerShellの起動時に読まれるps1xmlファイル stknohg.hatenablog.jp で触れましたが、PowerShell 1.0~5.0ではpowershell.exeの起動時に$PSHOMEにある*.format.ps1xmlと*.types.ps1xmlを読み込み、オブジェクトの書式設定やオブ…

WMF 5.1の新機能をざっくり説明する - 4. PowerShell エンジンの機能強化 編

今回は、 新シナリオと機能 編 バグ修正 編 コンソール機能強化 編 の続きです。 今回の対象範囲 WMF 5.1 の PowerShell エンジン機能強化 についてわかる範囲で補足を入れていく感じにします。 パフォーマンス パフォーマンスの改善について いくつかの重要…

WMF 5.1の新機能をざっくり説明する - 3. コンソール機能強化 編

今回は 新シナリオと機能 編 バグ修正 編 の続きです。 今回の対象範囲 WMF 5.1 のコンソール機能強化 についてわかる範囲で補足を入れていく感じにします。 VT100 のサポート Windows 10 では、VT100 エスケープ シーケンスのサポートが追加されました。 Po…

WMF 5.1の新機能をざっくり説明する - 2. バグ修正 編

前回の続きです。 今回の対象範囲 今回は、 WMF 5.1 のバグ修正 についてわかる範囲で補足を入れていく感じにします。 モジュールの自動検出の完全な受け入れ TODO : もう少し調べる MSDNを読んでもいまいちなんのためのバグ修正なのかわかりませんでした...…

WMF 5.1の新機能をざっくり説明する - 1. 新シナリオと機能 編

WMF 5.1のプレビュー版も出たので、そろそろWMF 5.1の機能について触れないとダメかなと思いエントリを書きます。 一回では書ききれないので何回かに分けて書く予定です。 公式情報 WMF 5.1についてはMSDNの、 WMF 5.1 リリース ノート でリリースノートが出…

Windows Management Framework (WMF) 5.1のプレビュー版がリリースされました

【2017/01/22追記】 つい先日WMF 5.1の正式版がリリースされました。 詳細はこちらのエントリをご覧ください。 stknohg.hatenablog.jp 【追記ここまで】 公式ブログより。 blogs.msdn.microsoft.com ブログの日付が7/16日ですが、本日のリリースです。 WMF 5…