実行ポリシーを変更しようとすると、管理者ではないため、レジストリを変更できないというメッセージが表示されます。
バッチファイルやその他の.exeおよび.comプログラムを実行できるので、これは可能であるように思われます。
実行ポリシーを変更しようとすると、管理者ではないため、レジストリを変更できないというメッセージが表示されます。
バッチファイルやその他の.exeおよび.comプログラムを実行できるので、これは可能であるように思われます。
ドメイン管理者がそれを禁止していない場合は、次のようにすることができます。
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser
これにより、マシン上のすべてのユーザーに設定するのではなく、現在のユーザーで実行されるPowerShellセッションのデフォルトの実行ポリシーが変更されます。
代わりに、現在のPowerShellセッションのみの実行ポリシーを変更する場合は、次のコマンドを使用できます。
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
ただし、ドメイン管理者が「スクリプトの実行を有効にする」グループポリシーを使用している場合、実行ポリシーを変更することはできません。グループポリシーを設定すると、Set-ExecutionPolicyコマンドレットが無効になります。
プロセス自体のポリシーを試して設定することができます。
powershell.exe-ExecutionPolicyバイパス
Windowsシェルからスクリプトを実行する簡単な方法が必要な場合、必要なのは次の内容myscript.ps1
のバットだけです。Runmyscript.bat
type myscript.ps1 | powershell -
とても単純なので、そもそもなぜps1を実行できないのか疑問に思いますが、そこに行きます。
スクリプトの名前を入力するためのユーザー入力を求める一般的なバージョンは次のようになります。
set /p filename="Type name of script here: "
type %filename% | powershell -
必要に応じて、このhttp://todayguesswhat.blogspot.co.uk/2012/08/windows-7-replacement-forを使用して、ダイアログボックスを使用してPowerShellで任意のファイルを開く一般的なvbscriptスクリプトを作成することもできます。.html
どうですか
$script = Get-Content .\test.ps1
Invoke-Expression $script
私がインターネットの他の場所で見つけた3番目のテクニックは使用することです
powershell.exe -EncodedCommand XXXXXXX
ここで、XXXXXXXはの結果です
$code = {
#powershell script goes here.
}
}
[convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($code))
参照: http ://dmitrysotnikov.wordpress.com/2008/06/27/powershell-script-in-a-bat-file/