LoginSignup
21
17

More than 3 years have passed since last update.

バッチを汎用利用して運用を効率化する

Posted at

概要

Windowsのタスクスケジューラーでタスク設定する際、パラメータをオプション設定してバッチを汎用的に利用する方法を紹介します。

こんな時にオススメ

  • アウトプットを分けたい
  • ログもそれぞれで出力したい
  • でも処理がほとんど同じ(バッチを分ける程でもない)

⇒できれば1コのバッチで運用していきたい!

実装サンプル

(前提)

実行されるコマンドのイメージ
Cscript Sample.wsf /param:1

(パラメータ取得)

Sample.wsf
Public Function SetParameter(ByRef parameter)
    If WScript.Arguments.Named.Exists("param") Then
        parameter = WScript.Arguments.Named("param")
    Else
        WScript.Echo "パラメータなし"
        WScript.Quit
    End If
End Function

(個別ログ出力)

  • バッチ名にパラメータを付けることで個別に作成できます
Sample.wsf
Public Function SetLogFileName(ByVal parameter)
    SetLogFileName = "log_" & WScript.ScriptName & "_" & parameter & ".txt"
End Function

オプション設定方法

  • 「タスクの設定」⇒「操作タブ」⇒「新規」を選択してで各設定値を入力します(その他の設定は適宜行ってください)

image.png

入力欄 設定サンプル 備考
プログラム/スクリプト Cscript
引数の追加(オプション) Sample.wsf /param:{値} ・「param」の部分(パラメータ名)は任意です
開始(オプション) C:\Test\ ・バッチファイルの配置ディレクトリを指定します

最後に

同じような事をやろうとしている方の参考になれば幸いです。

21
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
17