しばたテックブログ

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

PowerShell

続・Get-Randomで使われている乱数生成アルゴリズムについて調べてみた

PowerShell Advent Calendar 2017、13日目です。 qiita.com 以前に書いた、 blog.shibata.tech の続きになります。 本エントリではPowerShell 6.0でGet-Randomで使われている乱数生成アルゴリズムがどう変化したか調べた結果について説明します。 はじめに …

PowerShell Core 6.0をデバッグ実行する - Visual Studio Code編

PowerShell Advent Calendar 2017、11日目です。 qiita.com PowerShell 6.0のGAリリースも間近となりビルド・デバッグ手順も固まってきたと思えたので本エントリを書きます。 はじめに PowerShellがオープンソース化した時点でPowerShellのビルドはVisual St…

PowerShellにおける"配列リテラル"について

PowerShell Advent Calendar 2017、9日目です。 qiita.com 久しぶりのPowerShellの基本がわかっていなかったシリーズです。 以前のオープンソースカンファレンス2017 Hokkaidoでの登壇などで、ふつうに PowerShellには配列リテラルがあります。 と説明してい…

Application Request Routing(ARR)を使ったRedmineの設定について

blog.shibata.tech 以前に構築したWindows Server上のRedmineですが「IISと一緒に80番ポートでアクセスできる様にしたいなぁ。」と思ったのでリバースプロキシとしてApplication Request Routing(以降ARR)を導入してみました。 ARRを使ったRedmineの設定につ…

Windows 10のPowerShellモジュール変更点まとめ

まとめ、というか作成予定地です。 Windows 10の各バージョンごとでのPowerShellモジュールの変更点についてGistに簡単なメモをまとめたのでリンクを張っておきます。 時間があればちゃんとした記事としてまとめ直したいと思います。 変更点の調査方法 各バ…

PowerShell 6.0からファイル出力に関わるエンコーディングが変わります

現在開発中のPowerShell 6.0ではクロスプラットフォーム化することを主な契機としてファイル出力のエンコーディングに大きな破壊的変更が入ります。 現在最新のPowerShell 6.0 Beta.9でその変更が一部反映されたため本エントリで紹介します。 1. -Encodingパ…

Pester 4がリリースされました

というか結構前にしていました。 The first stable release of Pester 4 is out! Thanks to all contributors, most importantly @MSH_Dave @Jaykul @alx9r @ITpraktyk & me @nohwnd pic.twitter.com/wRm50U9GjM— Pester (@PSPester) 2017年9月13日 9月の中…

Pesterでカスタムアサーションを行う - 正式版

blog.shibata.tech 以前Pesterの機能をハックしてカスタムアサーションを行うエントリを書きましたが、Pester 4.0.5より正式にカスタムアサーションを追加する方法が提供されました。 本エントリではその方法を紹介します。 Pesterでカスタムアサーションを…

PowerShell 6.0からPowerShellのプログラム名がpwshに変わります

発端はGitHubのこちらのIssueから github.com もともと「PowerShellのプログラム名であるpowershell.exe(powershell)は長いので略称があった方が良いよね。」という提案から始まっています。 新しいPowerShellの略称について 先のIssueを見ればわかりますが…

PowerShell 6.0でアイコンが新しくなる話とPosh-ChanことPowerShellさんについて

ちょっとしたことですが意外と大きな変化です。 PowerShell 6.0の新しいアイコン PowerShell 6.0の開発においてこれまでは味気ないコンソールアプリのデフォルトアイコンが使用されていましたが、PowerShell 6.0 Beta.8から黒色をベースとした新しいアイコン…

PowerShell既定のフォーマット設定に介入する方法について (補足)

前回のエントリに対する補足を軽く書いておきます。 blog.shibata.tech format.ps1xmlのDefaultSettingsタグ PowerShell既定のフォーマット設定に介入するには、適当なforamt.ps1xmlファイルを作ってPropertyCountForTableタグに更新したい値を設定すればよ…

PowerShell既定のフォーマット設定に介入する方法について

きっかけはカナダのMVP、Thomas Raynerさんのブログエントリから。 www.workingsysadmin.com PowerShellにおいて予め*.format.ps1xmlによって表示書式が定められてないオブジェクトは、表示されるプロパティの数が4個以下の場合はTableフォーマットを、5個以…

PowerShellでmkdirしたディレクトリにcdする方法

クラスメソッドさんの dev.classmethod.jp が人気なので便乗してPowerShellだとどうすれば良いか軽く書いておきます。 本エントリの内容はWindows 10、PowerShell 5.1、PSReadline 1.2な環境で動作確認しています。 1. $$自動変数を使う Bashでは$_が「ひと…

Desired State Configuration Core (DSC Core)が発表されました

発表されてからちょっと時間が経ってしまいましたがざっくりまとめておきます。 公式情報はコチラ blogs.msdn.microsoft.com 以前PowerShell 6.0、PowerShell Coreのロードマップが発表された時はWindows PowerShell Desired State Configuration(以後PowerS…

Windows 10でPowerShell Remoting over SSHを試す

【2017/10/25追記】 先日リリースされた、Fall Creators Update(1709)でPowerShell Remoting over SSHができなくされていました。 これまで利用可能だったのが間違った更新なのか、単純に一時的な使用不可なのかはよくわかりません... 【追記ここまで】 公式…

Windows Serverに最小構成でRedmineをインストールする - その2

blog.shibata.tech 前回のエントリで最後に触れたとおりWindowsのThinでHTTPSアクセスを有効にする方法について説明します。 WindowsのEventMachineでSSLを有効にする方法 Thinの内部で利用されているEventMachineでSSLを有効にする方法については以下に詳し…

Windows Serverに最小構成でRedmineをインストールする

WindowsにRedmineをインストールする方法としてはBitnami Redmine Installerを使うのがメジャーですが、個人的な要件でできるだけ最小構成にしたく、MySQLを使わずにSQLiteを、Apacheも使いたくなかったので幾つかのサイトを参考にして自力でインストールを…

VisualSVN Server上のApacheでTracを動かしてみる

非常にレガシーなはなしです。 Trac Lightningからの移行をどうしようか悩んだ末に検証した内容なのですが、おそらくこれを本番環境で採用する事はないと思います。*1 一応最低限の動作を確認したので備忘録としてエントリを残しておきます。 0. はじめに 本…

PowerShell 6.0のロードマップに関して

2018/1/10(PST)にPowerShell Core 6.0が正式リリースされました。 詳しくはこちらのエントリをご覧ください。 blog.shibata.tech 先日PowerShell BlogでPowerShell 6.0のロードマップに関するエントリが公開されました。 blogs.msdn.microsoft.com 日本語情…

オープンソースカンファレンス2017 Hokkaidoで登壇しました

先日行われたオープンソースカンファレンス2017 Hokkaidoでオープンソースになった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での新機能・変更点まとめ

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

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 ミリ秒です。 (英…