WindowsのコマンドプロンプトとWindows Subsystem for Linux

Qiitaの投稿記事を眺めていると、たまに、おやっと思うような投稿記事が注目を集めていることに気づく。WindowsのBATファイルやコマンドプロンプト関連の投稿記事もそんな1つだ。

Windows向けの開発をしている場合はもとより、Windowsを開発プラットフォームにしているならば、いくらWindowsGUI操作が中心とは言っても、コマンドでの操作が必要となることも多い。

UNIX/Linuxユーザーからすれば、Windowsのコマンドは力不足と思うだろう。実際そうではあるのだが、恐らく想像よりはかなりマシだ。パイプもリダイレクトもあるし、forコマンドなどは結構いろんなことができる。

昔、Windowsをメインプラットフォームにしていた頃は、客先などで標準機能しか使えないところに出向く可能性などもあったので、コマンドプロンプト操作を普段から多用していた*1。同僚などは、私がGUIをほとんど使わずにコマンドプロンプトだけで操作しているのを見て驚いたほどだ。

最近も熊本地震への支援のため、Windows上で簡単な処理を行うツールを用意する必要に迫られたことがあった。最初はバッチファイルでどうにかならないかを考えたのだが、ファイルの選択をドラッグアンドドロップで行わなければならないため、C#で開発することに最終的にはなったのだが、その際に久しぶりにコマンドプロンプトを触った。

さすがに久しぶり過ぎて、少し苦労してしまったのだが、その際参考にさせて貰ったのが私の古くからの友人である山近さんが書かれた「Windowsコマンドプロンプトポケットリファレンス」だ。そう言えば、昔はこういう記事がWindows関連の雑誌 *2 などでも人気記事だったなと思い出しながら参考にさせて貰った。

[改訂新版]Windowsコマンドプロンプトポケットリファレンス

[改訂新版]Windowsコマンドプロンプトポケットリファレンス

 

Microsoftコマンドライン系の充実には長年努力しているにも関わらず、なかなか報われない。古くはWindows 98から提供された*3WSHがある。WSHはWMI (Windows Management Instrumentation) と組み合わせることでかなりのことができた。

それでも、UNIXのシェルの充実にはかなわないと、SFU (Services for UNIX) という製品で提供したUNIXサブシステムでUNIXシェルそのものをサポートしたりもしたが、Windows ServerにSUA (Subsystem for UNIX-Based Application) として搭載されるようになった後、しばらくしたら無くなってしまった。

Windows上でのシェル環境としてはPowerShellがその後主役となった。これもまたかなり強力なツールであり、Windowsのシステム管理であれば、これで十分まかなえるのであるが、逆に機能が抱負過ぎ、また他プラットフォーム上でのシェルと互換が無いため、開発者に愛用されているとは言いがたい。あくまでも私見だが。

そんな中、今回、Windows 10 Anniversary UpdateでWindows Subsystem for Linux が提供されてた。

今年春にサンフランシスコで開催されたBuildでMicrosoft社員に聞いてみたのだが、SFUUNIXサブシステムはWindowsのシステム管理にUNIXシェルのツールなどを流用するための手段として考えられたのだが、それに無理があったらしい。つまり、UNIX/Linuxはシステム管理がテキスト(ファイル)ベースであるため、UNIXシェルとの相性が良い。一方、Windowsレジストリなどに収容されたデータを専用ツールでアクセスするというシステムとなっている。そのため、単にUNIXシェルを使えるようにしても意味はなく、その反省がPowerShellに繋がったと話していた。

Windows 10 Anniversary Updateで提供されるUbuntu環境とBashは目的が全く異なる。MacOSLinuxに流れてしまった(主に)Web開発者を取り戻すために、Linux環境そのものをWindows上に用意した。そのため、SFUUNIXサブシステムで実現されていたプログラムレベルのWindowsとの相互運用は実現されていない*4。まだベータ版ということで、日本語の扱いなど微妙のようだが、今後の発展は楽しみだ。

それにしても、Windows Subsystem for Linuxという名前、逆じゃないのかと思ったが、目的を考えると、なるほどと思えてくる。

*1:同じ理由でキーボードもJISキーボードとUSキーボードを両方使えるようにしていた

*2: 日本から撤退してしまったIDGが出していたWindows NT Worldなど

*3:今でも使える

*4:そう考えると、SFUUNIX環境でWin32やCOMのアプリと連携できたのは凄い

Oracleと私

昨夜はOracle Cloud Developer Meetupに参加し、Qiitaの宣伝をさせて頂いた。

oracleclouddevelopers.doorkeeper.jp

普段のイベントとはやや異なる参加者がいらっしゃるイベントで、いろいろと学ばせていただいた。

しかし、何よりも感慨深かったのが、Oracleのイベントに私が出ているということ。

新卒で入った最初の会社であるDEC (Digital Equipment Corporation) は、経営状況が悪化した末期、事業をさまざまな会社に切り売りした。その1つがDEC Rdbだった。事もあろうか最大のライバルであったOracleに売却したときにはかなりの衝撃が走った。もっとも、その後、プロセッサ事業もIntelに売却するなど、似たことが起きて、競合に事業売却することはごく当たり前であることに気付いた。

転職したMicrosoftでは、SQL Serverの競合として常にOracleがいた。サーバーで競合していたSun Microsystemsも今ではOracleだ。

Googleでは事業領域も違うので、良くも悪くもOracleと関わることは無いと思っていたら、Javaのライセンスをめぐって裁判までする状況になってしまって、こりゃ、よほど私と相性の悪い会社だと思っていた。

感慨深い。

登壇までの1時間はOracleのAPEXのハンズオンだった。暇だったので、自分も参加してみたが、BaaS + PaaSのような形で簡単にアプリが作れる。データベースの会社だけあって、データ中心のアプリ(なんだかんだ言って、そのようなアプリはかなり多い)をさまざまなビューで見せるようなものには向いているだろう。まだ触ったこと無いので勝手な推測だが、kintoneと似たものを感じた。

今回のような機会が無かったら、APEXを触ることも無かったろう。関係者に感謝したい。

My Newspicks 2016/07/18 - 2016/07/24

先週(2016/07/18 - 2016/07/24)のNewspicks

それぞれのニュースへのコメントは埋め込んであるリンク先へどうぞ。

アマゾン化する世界 

先週で終了した連載「アマゾン化する世界」は面白かった。前半である先々週の記事は日本ではあまり知られていないAmazonの姿を紹介していたが、後半はコンテンツを軸にした記事が多かった。

 

newspicks.com

NetflixにしてもHuluにしても映像制作に進出しているが、Amazonカンヌ映画祭レベルのものまで作っているのは知らなかった。

 

newspicks.com

コンテンツホルダーにとって、ユーザーにリーチし、広く収益をあげるためには無視できないネット事業者との付き合い方は、Webが普及してから常に難しい舵取りが求められる。Googleブックスという、今から考えるとAmazon Kindle Unlimitedに比べるとまだ穏やかな取り組みであってもあれだけ揉めた(あちらは著作権に対しての考えの違いが中心だったが)のだが、Kindle Unlimitedの方がもっとエグい。別に勝手にコンテンツを持ってきているわけでもないし、嫌なら参加しなくて良いと言いながら、参加しても地獄、参加しなくても地獄の状況を作る。

 

newspicks.com

Amazonの実験都市となったシアトルにしばらく滞在してみたいと思わせる記事。シアトルのあちこちで新しいAmazonのオフィスの工事がされているという。一時のレドモンド(Microsoft本社のあるシアトル郊外の街)やカリフォルニア州のマウンテンビュー(Google本社のある街)のようだ。

Google関連記事

newspicks.com

GoogleのVRであるDaydreamが頓挫したのではないかという記事。Google I/Oでも実態がほとんど無かったので心配していた。ただ、VRを止めたのではないとのこと。

 

newspicks.com

マウンテンビューのGoogleオフィスとLinkedInオフィスをスワップするという話。LinkedInのオフィスビルも大きく立派なのだが、Googleに周りを囲まれるのは必ずしも快適なものでは無かったろう。確かに、Win-Win

自動車関連記事

newspicks.com

ミラーレス車のことをあまり知らなかった。調べてみたが、必ずしも利便性が上がるわけでもないように思う。コックピットのデザイン次第か。

 

newspicks.com

このデザインは好き嫌い分かれそう。限られた施設内などでは良いと思うが、一般道を走るのは大丈夫か。この車両デザインだと、立ったままの客もいるだろう。

次代の教養プログラミング

新しく始まった連載「次代の教養プログラミング」が楽しみ。

私のスタンスは、プログラミング教育は賛成だが、今の日本の教育システムでは心配なことが多いため、民間を積極的に活用するほうが良いのではないかというもの。

 

他のPicksは私のNewspicksページヘどうぞ。

newspicks.com

My Newspicks 2016/07/11 - 2016/07/17

先週(2016/07/11 - 2016/07/17)のNewspicks

それぞれのニュースへのコメントは埋め込んであるリンク先へどうぞ。

Google関連

newspicks.com

Googleの検索結果から削除される権利=忘れられる権利が認められなかったという判決のニュース。きちんとした法的根拠(個人情報保護法違反など)で検索結果から削除を求めるのはわかるが、インターネット上には存在しているのに、Googleの検索結果からだけ削除しろというのはわからない。元のインターネット上の情報さえ消されれば、Googleの検索結果からも消える。その意味で、根拠の曖昧な「忘れられる権利」というのはそもそも無理があったのではないか。最近、EUとGoogleを始めとする米国ハイテク企業の争いがまた激しくなっているが、この「忘れられる権利」も欧州から始まっている。

 

newspicks.com

その欧州とGoogleとの法的争い。欧州の人はGoogleGoogleのサービスのことをどう思っているのだろう。欧州委員会が言うように、アンフェアと思うのだったら、使わなければ良いのではと思うのだが、もはや必要不可欠のものになってしまっているので、本当は使いたくないのに、いやいや使っているのだろうか。単に欧州 vs. 米国企業と見る前に、実際のユーザーがどのように思っているか知りたい。

特集「アマゾン化する世界」

newspicks.com

先週はこの特集が秀逸だった。日本では今まであまり全貌が明らかにされてこなかったAmazonが様々な角度から分析される。Amazonはメディア嫌いというイメージもあったのだが、この特集ではAmazonがかなり協力しているように思える。

Amazonの最新工場の様子や楽天との違い、DMMがどのようにAmazonと対峙しているかなど、どの記事も興味深い。今週も楽しみ。

自動運転車関連

newspicks.com

先週も自動運転車のニュースが多かったが、この記事では、GoogleとTesla、そして少しだけだがトヨタ、それぞれの自動運転車へのアプローチの違いが見て取れて、面白い。私はTeslaファンだが、人の命を預かるものなので、慎重に進めていかないと、下手すると、事業を継続できないのではないかと思わせるほど、Teslaには逆風が吹いている。

newspicks.com

これなどがその例。マーケティングメッセージとして、Teslaは自動を強調しすぎた。現実はあくまでもアシスタンスなのだから、ハンドルから手を離したら、警告を出すなど、ドライバーの自己責任論にせず、もっとメーカー側での安全対策をするべきではあろう。

 

他のPicksは私のNewspicksページヘどうぞ。

newspicks.com

My Newspicks 2016/07/04 - 2016/07/10

先週(2016/07/04 - 2016/07/10)のNewspicks

それぞれのニュースへのコメントは埋め込んであるリンク先へどうぞ。

自動運転車関連

newspicks.com

Google Xを卒業。事業化に一歩近づいたのか。優秀な法務部長を獲得ということで、気になるのが、次のニュース。

自動運転、日欧で基準 18年にも追い越し・合流で

日欧で自動運転車のルール統一に向かって話し合い中というが、米国は独自路線とのこと。自動車メーカーはこれじゃ大変だろう。

 

newspicks.com

この記事からメルセデス・ベンツにいる社会学アレクサンダー・マンカウスキー氏を知る。

 

newspicks.com

この記事は昨年のものだが、とても面白い。人間の仕事がAIに奪われつつあると考えられているが、むしろ人間として何をし続けなければならないかを考えるのは人間であるとのこと。

 

newspicks.com

Googleの自動運転車のようなイメージが先行しているが、自動運転にはいくつかの用途がある。大型トラックはもともと高価なため、自動運転のために普通乗用車よりも高価な技術を採用できる。また、記事中に紹介されている「トラックの縦列走行により2台目以降は自動運転で走らせる技術を開発中」というPeloton Technologyは面白そうだ。

 

newspicks.com

普通車の一般道というのと異なる自動運転車の用途の1つがこれ。バスには乗客がいるので、また違った課題があるが、まずは私有地からというのは現実的なアプローチに思える。

 

他に自動運転者のニュースとしては、Teslaの事故を受けての報道が多かった。

自動運転機能、国内で事故2件 昨年12月以降、過信原因か

死亡事故のテスラは自動運転車ではなかった

どちらも、自動運転車の定義について考えさせる内容。レベル0からレベル4(米国ではレベル5も定義)で定義される自動運転車とメーカーが用いる宣伝文句。人の命に関わるものだから、どこまででできて、どこまで保証されるのかはきちんと説明されるべき。

Snapchat関連

newspicks.com

Snapchatに大人世代が入ってきているというニュースでいろいろと調べてみたら、すでにしばらく前から必ずしも若者だけが使うものでは無くなってきていたことがわかった。

 

newspicks.com

この記事からはなかなかしたたかなSnapchatの戦略が伺える。場所に紐づくフィルター機能。また、それを使いこなすローカルビジネス。

 

newspicks.com

そんなときに、このビッグニュースが。Snapchatで共有したものを再加工してInstagramへという流れがあったようだが、Snapchat内で再度保存していた写真を共有できるようになるとしたら、この流れも変わることだろう。

 

ところで、仕事でも多少関係するため、Snapchatを触り始めてみたが、めちゃくちゃUIがわかりにくい。UXも疑問なところがある。これ、どっかが本気出せば、リプレースされる可能性あるのではないだろうか。まだ、Snapchatを良く理解していないからわかっていないだけかもしれないが。Twitterを超えるほどのユーザーを抱えている理由がまだ良くわからない。

AI関連

newspicks.com

政府がAIに関しての意見を募集中。良いと思うが、検討している方向性など示さないまま意見を求めても、あまり参考にならないのではないか。

 

newspicks.com

2000年代前半にインターネット家電ブームがあり、ネットにつながった冷蔵庫やら電子レンジが家電量販店にも並んだときがあった。結局、ネットにつなぐためのコストに見合うほどのメリットはなく、ほどなくブームは終焉へ。今はネット接続機能搭載のためのコストも安くなり、AIは確かに便利なので、前回のようなことは無いだろう。ただし、疑問はオーブンが持っているだけの情報で本当に最適なアドバイスを出せるのか。いつも持ち歩いているスマホを抑えているGoogleなどのほうが強いのではないか。

 

newspicks.com

いやいや、MicrosoftGoogleには負けていませんという記事がこれ。個別要素では必ずしも1番ではないが、すべてを持っているのがMicrosoftだという論調だ。にわかには納得しがたいと思うかもしれないが、プラットフォームを抑えていないことによる自由はある。うまく進めれば、チャットボットプラットフォームを確立し、そこで主権を取れるかも。あくまでも可能性の話だが。

 

他のPicksは私のNewspicksページヘどうぞ。

newspicks.com