PowerShellのスクリプトファイルを実行する方法

Power Shell
この記事は約4分で読めます。

「同じ処理を複数台のPCに行いたい」ことはありませんか?
例えば、ファイル名の一括変更やバックアップファイルの作成など。
そんなときにPowerShellスクリプトファイルは便利です。

Power Shell(パワーシェル)について詳しくは以下にあります↓

Power Shell(パワーシェル)とは?コマンドプロンプトとの違い
Power Shellは、マイクロソフトにより開発されたコマンドプロンプトの後継ツールで、Windowsに標準搭載されています。コマンドプロンプトでは不可能だった、複数の命令を組み合わせることができ、より高度な処理を行うことができます。

 

PowerShellのコマンド実行方法は2つ

PowerShellコマンドの実行は、

・コンソールにコマンドを打ち込んで実行する方法
・メモ帳などにコマンドを記述しそのスクリプトファイルを実行する方法

があります。

スクリプトファイルを用意することで、バックアップファイルの作成など、あらかじめ決まっている処理を簡単に実行することができます。

このスクリプトファイルを複数台のPCに配布すれば、PC利用者が一からPowerShellコマンドを打ち込まなくても、スクリプトファイルの実行だけで処理が完了します。

 

PowerShellスクリプトファイルの実行

PowerShellで書かれたスクリプトファイルの拡張子は .ps1です。(バッチファイルでいう .bat)

メモ帳などにPowerShellスクリプトを記述します。

ファイル名を「実行ファイル.ps1」ファイルとして保存します。
ファイル名は何でも良いですが、拡張子は.ps1とします。

スクリプトファイルを実行するには、スクリプトファイルを右クリックし、「PowerShellから実行」を押すことで実行できます。

スクリプトファイルの内容は、「コンソールに文字出力する」なので、実行しても処理されたかわかりませんね。

なので次は、スクリプトファイルをPowerShellコンソールから実行してみます。

 

PowerShellコンソールからスクリプトファイルを実行

スクリプトファイルはPowerShellコンソールの中で

PowerShell .\実行テスト.ps1

と記述することで実行できますが、既定ではスクリプト実行が抑止されているので、以下のようにエラーが出力されます。

スクリプトの実行が「無効」に設定されているので、
スクリプト実行はできませんのセキュリティエラーです。

そのため、スクリプトファイル実行にはポリシー(ルールのこと)の変更が必要になります。

PowerShell -ExecutionPolicy RemoteSigned .\実行テスト.ps1

オプションで実行ポリシーの指定をすることで実行可能になります。

「Hello world!」がコンソールに出力されました。

実行ポリシーについて詳しくは以下にあります↓

PowerShellの実行ポリシーとは?ポリシーを変更する方法
PowerShellのスクリプトファイル(.ps1)を実行する場合、既定ではスクリプト実行が抑止されています。これは、実行ポリシーによるもので、危険なスクリプトの実行からコンピューターを守るために設定されています。そのため、スクリプトを実行...

 

タスクスケジューラから実行

スクリプトファイルとタスクスケジューラを組み合わせることで、

・毎週必ず行う上司へのメール通知
・決まった時間にエクセルファイルを開き、マクロを実行して自動で集計

などといった作業を減らすことができます。

タスクスケジューラから実行する場合は、タスクスケジューラの方で「引数の追加」に実行ポリシーを入力します。

PowerShellをタスクスケジューラから実行する方法は以下にあります↓

PowerShellをタスクスケジューラから実行する
PowerShellとタスクスケジューラを組み合わせることで、決められた時間に、決められた処理を自動で実行することができます。 今回はCドライブ直下に置いたPowerShellスクリプトファイル(.ps1)をタスクスケジューラから自動実行す...

 

バッチファイルから実行

バッチファイルもメモ帳から作成します。

PowerShell .\実行テスト.ps1
pause

を入力し.bat拡張子で保存します。

作成したバッチファイルはダブルクリックで実行できます。
実行すると、PowerShellファイルが実行されます。

 

まとめ

同じ処理を複数台のPCに行いたいとき、PowerShellで書かれたスクリプトファイルを用意することで、簡単に実行することができます。

スクリプトファイルとタスクスケジューラを組み合わせることで、さらに業務効率化ができるので試してみてください。

 

PowerShellをタスクスケジューラから実行する

PowerShellをタスクスケジューラから実行する
PowerShellとタスクスケジューラを組み合わせることで、決められた時間に、決められた処理を自動で実行することができます。 今回はCドライブ直下に置いたPowerShellスクリプトファイル(.ps1)をタスクスケジューラから自動実行す...

PowerShellのよく使うコマンドレット

PowerShellのよく使うコマンドレットは?ファイル操作やプログラムの起動方法
Power Shellで利用するコマンドをコマンドレットといいます。 コマンドプロンプトではできなかった、複数のコマンドを実行したりなど、複雑な命令を処理することができます。 コマンドレットは「動詞-名詞」という形式になっており、コマンドプ...