バッチファイル
バッチファイルは、Windowsで実行できるテキストファイルです。テキストファイルにコマンドを記述して保存すると、バッチファイルとして実行することができます。バッチファイルは、頻繁に実行するコマンドをまとめておくのに便利です。
バッチファイルと管理者権限
例えば、Windowsサービスのエントリを削除するコマンド(SCコマンド) をバッチファイルで利用するには、バッチファイルを管理者として起動しなくてはなりません。
ショートカットとバッチファイルを組み合わせると、ワンクリックでコマンドを実行できることがわかったので具体例を紹介します。
バッチファイル
バッチファイルは、Windowsで実行できるテキストファイルです。テキストファイルにコマンドを記述して保存すると、バッチファイルとして実行することができます。バッチファイルは、頻繁に実行するコマンドをまとめておくのに便利です。
バッチファイルを作成するには、メモ帳などのテキストエディタでテキストファイルを作成します。テキストファイルにコマンドを記述したら、ファイル名を拡張子「.bat」で保存します。保存したバッチファイルを実行するには、コマンドプロンプトからファイル名を入力します。
バッチファイルのコマンドは、Windowsのコマンドプロンプトで実行できるコマンドであれば、どんなコマンドでも使用できます。例えば、コマンドプロンプトで「dir」コマンドを実行すると、カレントディレクトリのファイル一覧を表示できます。このコマンドをバッチファイルに記述すると、バッチファイルを実行するとカレントディレクトリのファイル一覧を表示することができます。
バッチファイルは、Windowsでコマンドプロンプトを使用する際に、頻繁に実行するコマンドをまとめておくのに便利なツールです。
活用例
Windows サービスに登録されたサービスを削除するためのバッチファイルを作成して、ダブルクリックだけで管理者として実行できるようにします。
2ステップ
Windowsサービスから、egGetSvc、Luminati Net Updaterをワンクリックで削除するコマンドを書いたバッチファイルを作成します。次に、作成したバッチファイルを管理者権限で起動するためのショートカットを作成します。
[Steps]- Step1:deleget.bat を作成する。
egGetSvc、Luminati Net Updaterをサービスから取り除くためのバッチファイル
- Step2:RUNAS を利用してバッチファイルを管理者として実行するショートカットを作成する。
deleget.bat /Step1
egGetSvc、Luminati Net Updater を削除するバッチファイルを作成します。
ファイル名は「deleget.bat」としていますが、お好みの名前を使うことができます。
次のステップで、deleget.batを管理者として実行するためのショートカットを作成します。
echo.
echo EagleGet関連サービスを停止後削除します
echo.
echo 1. egGetSvc 停止→削除
echo 2. luminati_net_updater_win_eagleget_com 停止→削除
echo.
echo 対象サービスが存在しない時はエラーを返します
echo.
pause
echo.
sc stop egGetSvc
sc stop luminati_net_updater_win_eagleget_com
sc delete egGetSvc
sc delete luminati_net_updater_win_eagleget_com
echo.
echo 処理が終わりました
pause
EagleGet の情報は以下の記事をお読みください。
RUNAS.exe ショートカット
Windowsコマンドラインツール [RUNAS.exe] を利用して、作成したバッチファイルを管理者として実行できるショートカットを作成します。
作成するショートカットは、初回実行に限りAdministratorのパスワードを要求されるので把握しておいてください。
作成したショートカットはデスクトップなど任意の場所に配置することができます。
参照は使いません。
deleget.bat に記載するコマンドはフルパスで指定します。
ショートカットの作成手順
- デスクトップ > 右クリック > 新規作成:ショートカット
- 項目の場所:
C:\Windows\System32\runas.exe /savecred /user:administrator "C:\deleget.bat"
- 次へ
- ショートカットの名前を入力
- 完了
- 以上
引数の説明
...\runas.exe /savecred /user:administrator "C:\deleget.bat"
/savecred | ユーザーが以前に保存した資格情報を使います。 |
/user:administrator | 管理者アカウント、Windowsビルトインアカウント |
バッチファイルを管理者モードで実行するために、/user:administrator を指定しています。
administrator は無効化されているので、管理ツールを開いて有効化する必要があります。
スナップショット
併せてお読みください。
エラーは無視でよい
[OpenService FAILED 1060] エラーは、次の場合に表示されます。無視してください。
まとめ
このサイトを検索 | Search this site