業務改善!Windows PowerShell入門

Windows PowerShellで、とにかく楽をしたい!実際に仕事で楽になった事、便利になった事を紹介しつつ進めていきます。

PowerShell スクリプトファイルを配布しろ!#2

前回はクソダサい方法で、スクリプト実行をした。

よって、今回はカッコよくいきたいところである。

やはり!!!!

 

見た目にこだわることは超重要!

 

カッコつけてPowerShellライフをしたいのですよ。

 

さて、カッコつけの準備をしよう。まずは、PowerShellがダブルクリック実行できない理由を明らかにしないといけない。

 

ダブルクリックすると、メモ帳が開いてソースが見れるだけでスクリプトが動かない。

 

これは、実行ポリシーの問題以前に、プログラムの関連付けがされていないからに他ならない。

 

さっそく調べてみよう。PowerShellスクリプトファイルのプロパティを見てみると、プログラムのところが、メモ帳になっている。だから、メモ帳が開くのである。

 

f:id:acoustic_groove:20171114013235p:plain

 

だったら、メモ帳からPowerShellに変更すれば良いやんけ!!と思うかもしれないが、落ち着け、餅つけ!

 

・さまざまな場所でPowerShellライフをしないといけない。
・毎回変えてられっか?!くそめんどくせえゼ。
・自分のPC以外でやることを常に想定に入れる!

 

俺はこう思うのよね。

よって、直接変更しない案を紹介したい。

 

▼ショートカット実行案

  1. PowerShellスクリプトファイルのショートカットを作る。
  2. プロパティを開く。
  3. ショートカットタブを選ぶ。
  4. リンク先の先頭に、以下を追加してOKを押す。

 PowerShell -ExecutionPolicy ByPass -NoExit
-NoExitの後には半角スペースを必ず入れること。

 

 f:id:acoustic_groove:20171114015903p:plain

 

これは一体何をやったかというと、PowerShellスクリプトファイルに対して、何を使って実行するかというプログラムの指定と実行オプションを付与したのである。 

 

・プログラムの正体
powershell.exe
 
・実行オプション
-ExecutionPolicy ByPass -NoExit
実行ポリシーを一時的にByPassにする。飽くまでも一時的だゼ。
(他にもRemoteSigned,Unrestrictedを指定しても良い。俺はByPassを使う。綴り短いし!ってのも理由のひとつ)
 
・-NoExitとは
プログラム実行後、プロンプトを勝手に閉じないようにしてくれる。
これがないと、勝手に閉じる。

 

 

 これをもってして、ショートカットファイルをダブルクリックすると......

 

f:id:acoustic_groove:20171114023121p:plain

 

お疲れっす!

あと、これまた見た目だが、ダブルクリック実行できないスクリプトファイルをわざわざ、人に見せる必要ないゼ! 

スクリプトファイル本体はScriptフォルダに入れておくと、カッコええ感じが俺はする。

 

テスト

│  hoge.ps1 - ショートカット.lnk
│ 
└─Script
        hoge.ps1
       

 

PowerSell、イエーイ!