HOWTO · Batch
バッチ スクリプトをサイレント モードで実行する
このチュートリアルでは、バッチ スクリプトをサイレント モードで実行する方法を示します。
このページの内容
サイレント モードを使用せずに CMD を実行すると、コマンド プロンプトは CMD のコードのすべての行を出力します。 この記事では、バッチ スクリプトを使用して CMD サイレント モードを有効にする方法について説明します。
また、バッチ スクリプトをサイレント モードで実行するさまざまな方法についても学習します。 トピックをより簡単にするために、いくつかの例と説明を見ていきます。
@echo off コマンドを使用してサイレント モードでバッチ スクリプトを実行する
echo という名前の Batch の組み込みコマンドは、スクリプト内でいくつかの目的に使用されます。 コマンド echo に @ を含めます。
スクリプトの先頭にコマンド @echo off を追加するとします。 以下の例を見てみましょう。
SET /A x = 15
SET /A y = 25
SET /A z = %x% + %y%
ECHO The sum of a and b is %z%
IF %z% LSS 20 (echo The result is less than 20) ELSE (echo The result is greater than 20)
上記の例では、2つの数値を追加し、その数値が 20 未満かどうかを確認しました。ただし、重要な点は、コードの先頭でコマンド @echo off を使用しない場合、出力が得られるということです。 以下のように。
出力:
C:\Destination\Author>SET /A x = 15
C:\Destination\Author>SET /A y = 25
C:\Destination\Author>SET /A z = 15 + 25
C:\Destination\Author>ECHO The sum of a and b is 40
The sum of a and b is 40
C:\Destination\Author>IF 40 LSS 20 (echo The result is less than 20 ) ELSE (echo The result is greater than 20 )
The result is greater than 20
ここで、スクリプトの先頭でコマンド @echo off を使用すると、出力は次のようになります。
The sum of a and b is 40
The result is greater than 20
したがって、コマンド @echo off は、バッチ スクリプトの各行の表示をオフにし、適切な出力を提供します。
サードパーティ製ソフトウェアを使用してバッチ スクリプトをサイレント モードで実行する
以下では、Batch スクリプトの実行に使用できるサードパーティ製ソフトウェアをいくつか紹介しました。
隠しスタート (HStart)
Hidden Start は、いくつかのオプションを適用してスクリプトや実行可能ファイルを起動できる、強力でポータブルなツールです。 コンソール ウィンドウを非表示にする、最上位の権限で実行する などのオプションがあります。
このサードパーティ ソフトウェアを使用してバッチ スクリプトを実行するには、ファイルの場所を指定して実行可能ファイルに追加するだけです。
SilentCMD
SilentCMD は、Batch スクリプトの実行に使用できる小型軽量のサードパーティ ツールです。 SilentCMD でバッチ スクリプトを実行するときの基本的な構文は次のとおりです。
SilentCMD [path to your file] [your batch arguments] [ available options]
NirCMD
NirCMD は、NirSoft によって作成されたサードパーティ ソフトウェアです。 コンソール ウィンドウを開かずに複数のタスクを実行できる多機能の小さなツールです。
このサードパーティ ソフトウェアを使用する一般的な構文は次のとおりです。
nircmd exec hide [ Your Path to file]
VB スクリプトを使用してバッチ スクリプトをサイレント モードで実行する
Visual Basic スクリプトを使用してバッチ ファイルを実行できます。 VB スクリプトを使用してバッチ スクリプトを実行するには、次の例に従います。
SET WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\YourLocation\YourScript.bat" & Chr(34), 0
SET WshShell = Nothing
タスク スケジューラを使用してバッチ スクリプトをサイレント モードで実行する
スケジュールされたタスクとして、タスク スケジューラでバッチ スクリプトを実行することもできます。 そのためには、以下の手順に従う必要があります。
-
タスク スケジューラを開きます。
-
次に、
タスクの作成をクリックします。
-
ここに名前と必要な情報を入力します。
-
次に、
アクションタブをクリックしてから、新規をクリックします。
-
ここで、バッチ スクリプトの正確な場所を指定し、アクションを選択して、必要に応じてオプションの設定を指定します。
-
最後に、開いている両方のウィンドウで
OKをクリックします。