1. 主にAIについて、しゃべる練習
  2. PowerShellに入門しました
2026-02-22 13:05

PowerShellに入門しました

サマリー

スピーカーは、Windowsのコマンドプロンプトに抱いていたネガティブな印象から、PowerShellへの入門を通じてその設計思想を深く理解しました。特に「動詞-名詞」のコマンド構造やタブ補完の利便性に触れ、従来のUNIX系シェルとは異なるアプローチに感銘を受けています。TwitterからXへの変化や、テキストアドベンチャーゲームとの類似性を引き合いに出し、PowerShellの概念を学ぶためのゲーム開発の可能性についても言及しています。

PowerShellとは?初期の印象とコマンドプロンプトからの進化
おはようございます。しゃべる練習です。今回のテーマは、PowerShellに入門してみた、です。PowerShellというのは、Windows11とかで、Windowsで使えるシェルです。
バッシュとか、Zシェルとか、いろいろあると思うんですけども、マイクロソフトが作っているので、PowerShellというのがあるということだと思います。
昔は、Windowsの場合は、コマンドプロンプトというのを起動していましたけれども、それを改良したものと認識しています。
これなんですけども、正直、あまり良い印象を持っていなかったんですね。
Windowsのコマンドプロンプトというのが、UNIXというかLinuxというかのもどきみたいな感じになっていて、
同じコマンドが使えたり使えなかったりみたいな感じの、中途半端な存在という印象が私にはありましたけれども、
それがPowerShellになって、さらに違う方向に進化したという感じみたいなんですよね。
PowerShellコマンドの発見とエイリアスの利便性
なので、今回僕が使ったコマンドがmoveitemだったかなというコマンドなんですけども、
これがですね、もともとはディレクトリを削除したかったんですね。
Linuxとかの場合は、rmdirとかrmとか、そういうコマンドだと思うんですけども、
ちょっとうまく消せないなということがあってですね。
いろいろ調べていくとですね、このremove-itemというコマンドがPowerShellのコマンドみたいなんですね。
ただ、そういうLinuxとかUNIXとかの互換性を保つために、
ediasって言うみたいですけども、rmとか打つと内部的にはremove-itemが呼び出されるみたいな、
そういう状態になっているみたいです。
なんとなく雰囲気は感じていて、PowerShellってこういう感じのコマンドだよねっていうのがあって、
しかもそのremove-itemのremoveのrが大文字で、itemのiが大文字でっていう感じでね、
その辺も打つのめんどくさいなというふうに思ってたんですけども、
どうも調べてみると、これは別に小文字で全部打ってもいいみたいです。
タブで保管が効くということで、保管した時には勝手に大文字に変わってくれるみたいではありますけれども、
ただそれをいちいちShift-Rみたいな感じで打たなくてもいいということで、
ちょっと抵抗感が少し下がりました。
「動詞-名詞」の設計思想とTwitter/Xとの共通点
ここでTwitterからXの話を少ししたいと思います。
イーロン・マスクさんがお買い上げになられて、TwitterがXという名前になりましたけれども、
その時にいろんな変更、改革、見る立ち位置によって表現は変わってくると思うんですけれども、
やった中で今までツイートって呼んでたものがポストというふうに呼ばれたりするようになりました。
文化が失われた感があって悲しい気持ちはあるんですけれども、
より普通の単語になったという感じだと思うんですよね。
パワーシェルがやろうとしていることもそういうことなんだなということを私の理解ですけれども、
そうなんではないかというふうに理解が深まりました。
普通にリムアイテムというふうにすると、これはファイルを削除する時にもフォルダ、ディレクトリを削除する時にも、
いろんな対象、いろんなオブジェクトと言ってもいいのかもしれない。
正式な用語かどうかわからないですけれども、そういうものを削除する時に使えるということみたいなんですよね。
この動詞、配分、名詞みたいなところもコンセプトとしてあって、考え方の応用が効くというか、
一つのコマンドとかこの世界の法則がわかれば、ある程度推測して、
こういうふうにやればいいのかなというふうに自分で考えられるようになるというところも狙われているなと思うので、
そういうふうに考えると非常によく考えられていると言えるのではないかと思いました。
PowerShellへの抵抗感の解消と学習のヒント
今までろくに調べもせずに、Linuxみたいなもんだと思って使おうと思ったら、
すぐ使いにくいみたいな感じで、ここの体験はもうちょっと良いUXになるように頑張っていただけるといいんじゃないかなと思うところはありますけれども、
それにしても私の中での心のハードルは解けてですね、PowerShellと今後仲良くしていけそうかなという気持ちになりました。
この辺もAIにPowerShellのことについて教えてとかというと、非常に親切に教えてくれるわけですけれども、
とりあえずわからなかったら、get-helpやということで、
コマンド一覧みたいなやつを出すコマンドもあったと思うので、そういうのを見て駆使していくといいんじゃないかなということで、
PowerShell、これから元々のUNIXのスタートから始まった時からのコマンドたちというのは、
制約が多い中で生まれてきたコマンドだったりとか、あと効率性みたいな、一文字タイプするのも面倒くさいみたいな感じの中で、
効率面でも制約の中で生まれたものたちで、それはそれで私としては文化的な意義とかも含めて大事にしたい気持ちはあるんですけれども、
今時タブで保管される世界観の中で、また新たなアプローチというものにマイクロソフトさんがチャレンジされているんだなという感じですね。
PowerShellとコマンド入力型アドベンチャーゲーム
さらに冗談ですけれども、これを見て私が思ったこととしては、
昔8ビットパソコンの時代、1980年代の頃にはコマンド入力型アドベンチャーゲームというものがあったんですね。
それは日本語が入るのもありましたけれども、多くは英語でコマンドを打つ感じなんですね。
オープン、スペース、ボックス、エンターみたいな感じで箱を開けるっていうのを入力すると画面上で箱が開いて中が見えるみたいな。
ゲット、ハイフン、メモ、リード、スペース、メモみたいな感じで冒険していくアドベンチャーゲームというジャンルがありまして、
それを懐かしく思い出した感はあります。
コマンド探しということも含めたゲーム性というか、何というかというようなものがありましたよ。
ということで、それに比べれば保管もしてくれるし、ゲットヘルプも出るし、使えるコマンド一覧は全部わかっちゃうんで、
それを探す必要は、それを探す、その単語が難しすぎてクリアできないみたいな、そういう理不尽なことにはならないと思うんですけれども。
ターミナルアプリの進化とPowerShell学習ゲームの提案
あと、今回クロードコードを使う中で、ターミナルのアプリっていうものの可能性がすごいあるんだなっていうことをすごい感じてるんですね。
普通にコマンドラインとかで打てたらインターフェースとしてはすごい使いづらくて、
ウェブのインターフェースの方がいいなって思ってたんですけれども。
あとはね、ちょっとマニアックですけれども、昔のメインフレームの画面とかでタブタブタブ、文字入力文字入力、
エンターみたいな、エンターサブミットみたいな感じの世界観の方が操作しやすいなっていう感じが、私の中での感覚としてあったんですけれども。
ターミナルのアプリっていうものが、こんなにすごい色々できるのねっていう。
カーソルで選択肢を選択してエンターで実行みたいなこともできるし、カーソルで選択してスペースでそれにチェックを入れていって複数の回答を選択した状態で実行とかいうのもできるし、
いろんな制御がターミナル上で、ターミナルできるっていうところで、TTYっていうんですか、そこの仙台能力はめちゃめちゃあって、
それをあんまりみんな、普段普通のものでは使ってないというか、そんなにそこを頑張るところじゃないし、普通にコマンド打った方が早いし的な、ユニックス哲学的な部分との兼ね合いもあるのかどうかわからないですけれども、
そういうのはあんまり見かけなかったんですけれども、プロトコードでいろいろできるんだということを学んだので、それを踏まえて改めて、ターミナルで動くテキスト入力アドベンチャーで、
言葉の入れ方を動詞、配分、名詞みたいな感じの基本にすることで、あんまり表だって言うと何かに引っかかっちゃうかもしれないんですが、
一般的なものだと思うので、そういうのでパワーシェルの世界観とか感覚とかっていうのを学べるといいんじゃないかなと思うんですよね。
だからマイクロソフトさんがそういうのを作ったらいいんじゃないかなと思ったりもします。
ミステリーハウスっていう単語を使っていいのかどうかわからないですけれども、家の中を探索とか、最近だと脱出ゲームっていうジャンルがあって、
この言葉は別に使っても大丈夫そうなので、脱出ゲームを作って、
サーチなんちゃらとか、エンタードアとかオープンドアとか、そういうのを駆使していって出ていくと。
さらにその中でいろんなコマンド、実際にあるコマンドもあれば、このアドベンチャーゲームの中でのコマンドっていうのもあると思うんですけれども、
そういうのも実際のコマンドを覚えるっていうよりは、世界観みたいなところを理解を深めるっていうことができるといいんじゃないかな。
何ならその脱出もサイバー空間のプリズンからの脱出みたいな感じにするのも楽しいかもしれないなとか思ったりしました。
気が向いたら自分でも作ってみたいなと思っています。
まとめ
ということで今回のシャペレンは以上です。ではまた次回。
13:05

コメント

スクロール