バッチファイル(.bat)の先頭に以下の記述を差し込み、PowerShellコマンドを入力すると、管理者権限に昇格したうえでPowerShellコマンドを実行できます。標準的な設定では、起動時はUACプロンプトが出現します。
PowerShellではなくコマンドプロンプトを操作したい場合は、以下の記事を参照してください。

【2025年版】「学校指定パソコン」は思考停止で買うと後悔するかも。ビジネスにも使えるおすすめノートPCまとめます
入学する学校から「パソコンを買いなさい」と言われたとき、もしあなたが「学校指定パソコンなら保証もあるし」「おすすめされたから」と思考停止で買ってしまうと後悔してしまうかもしれません。批判を恐れずに言ってしまえば、学校指定パソコンは高いだけの...

今サイトを立ち上げるなら、ドメインとレンタルサーバの最強の組み合わせは?
このサイトを立ち上げるにあたって検討した、ドメインとサーバーについて備忘録としてまとめます。結論から言うと、このサイトはXserverドメインと新しくなったさくらのレンタルサーバ スタンダードの組み合わせで運用しています。りょっちアフィリエ...
.ps1ファイルは実行ポリシーを変更したうえで、ファイルを右クリックして「PowerShellで実行」しなければいけませんが、キッティング作業などでは超面倒くさい。この方法では、これらのステップを踏まずに済みます。
@powershell で始まる行の「17」は、これが書かれている行を指定します。(@powershell~が書かれているのが17行目なので、17を入れている)
@echo off
setlocal enabledelayedexpansion
cd /d %~dp0
rem 管理者権限で実行
openfiles > nul
if "%1"=="" (
set arg=
) else (
set arg= -ArgumentList "%1"
)
if errorlevel 1 (
PowerShell.exe -Command Start-Process \"%~f0\"%arg% -Verb runas
exit
)
@powershell -NoProfile -ExecutionPolicy Unrestricted "$s=[scriptblock]::create((gc \"%~f0\"|?{$_.readcount -gt 17})-join\"`n\");&$s" %*&goto:eof
#この下に管理者権限で実行するPowerShellコマンド