1. ホーム
  2. スクリプト・コラム
  3. パワーシェル

このシステムでのスクリプトの実行を無効にするPowerShellソリューション

2022-01-04 12:18:07

Powershellで直接スクリプトを実行すると、次のような現象が発生します。

このシステムではスクリプトが無効になっているため、ファイル ******.ps1 を読み込むことができませんでした。詳細については、"get-help about_signing"を参照してください。
場所 行数:1 文字数:17
+ E:\Testtest.ps1 <<<<
+ CategoryInfo : NotSpecified: (:) [], PSSecurityException
+ FullyQualifiedErrorId : RuntimeException

ps1 の内容です。

powershell で set-ExecutionPolicy RemoteSigned を実行する。

以下のように、正常に動作していませんでしたが、上記のコマンドを実行すると、以下のように動作するようになりました。

get-help about_signing"を参照してください。

トピックス
サインについて

簡単な説明
Windows PowerShellの実行ポリシーに準拠したスクリプトに署名する方法について説明します。

詳しい説明
実行制限ポリシーでは、スクリプトの実行は一切許可されません。
AllSignedとRemoteSignedの実行ポリシーは、Windows PowerShellがデジタル署名されていないスクリプトを実行できないようにします。

このトピックでは、選択した署名されていないスクリプトを実行する方法(実行ポリシーがRemoteSignedの場合でも)と、署名されていないスクリプトに
スクリプトを使用することができます。

Windows PowerShell の実行ポリシーの詳細については、about_Execution_Policy を参照してください。

シグネチャースクリプトの実行を許可する
-------------------------------
コンピュータでWindows PowerShellを初めて起動したとき、現在の実施ポリシーは「制限」(デフォルト設定)になっている可能性が高いです。

制限付きポリシーは、スクリプトの実行を許可しません。

お使いのコンピュータのアクティブな実行ポリシーについて知るには、次のように入力します。

get-executionpolicy

自分が書いた署名のないスクリプトと他のユーザーの署名のあるスクリプトをローカルマシンで実行するには、次のコマンドを使用します。
の実施ポリシーをRemoteSignedに設定します。

set-executionpolicy remotesigned を設定します。

詳細については、Set-ExecutionPolicyを参照してください。

実行" set-ExecutionPolicy RemoteSigned "です。

ポリシー変更の実施
実行ポリシーは、信頼されていないスクリプトの実行を防ぐことができます。実行ポリシーを変更すると、about_Execution_Policies に公開されることがあります。
ヘルプ トピックで説明されているセキュリティ リスク。実行ポリシーを変更した方が良いですか?
[Y] Yes(Y) [N] No(N) [S] Pending(S) [?] Help (初期値は "Y"): y

CMDバッチファイルの実行

CMDシェルからバッチスクリプトを実行するには、ファイルをプレーンなASCIIテキストとして保存し、ファイル拡張子を.CMDとし、コマンドラインからCMDの名前を入力し、コマンドラインからスクリプトの名前を入力し、リターンキーを押してください。

C:\Batch> Demo.cmd

他のバッチファイルの中からバッチファイルを実行するには、CALLコマンドを使用します。そうしないと、最初のスクリプトはそれ以上コマンドを実行せずに終了します。

旧来の(Windows 95スタイルの)拡張子.BATでバッチスクリプトを実行することも可能ですが、その場合、ERRORLEVELの設定が異なるので注意が必要です。

Powershellスクリプトを実行する
CMDシェルからPowerShellスクリプトを実行する方法。

コピーコード コードは以下の通りです。

C:\> powershell -file "c:\batch\demo.ps1"

VBScript ファイルを実行する

CMDシェルからVBScriptを実行する場合。

コピーコード コードは以下の通りです。

C:\> cscript c:\batch\demo.vbs

大胆に計画し、精力的に実行することが、進取の気性に富んだ方法である。