【バッチ処理】自動で定期的にフォルダの要素を書き出す
バッチ処理の入門記事です。
"C:\テスト"というフォルダを作成する。
デスクトップでテキストファイルを作成し、下記の内容を入力し、dir.txtとして保存する。
dir "C:\テスト" > "C:\テスト\テスト.txt"
保存する際には、エンコード:ANSIを選択する。UTF-8にすると、フルパスに全角の文字がある際にエラーになることがある。
作成したテキストファイルの拡張子を.txt→.batに変更する。
バッチファイルを実行する。ダブルクリック、または右クリック→「開く」で実行できる。
実行した結果、"C:\テスト\テスト.txt"が生成されたことを確認する。
自動で実行するため、タスクスケジューラにバッチファイルを登録する。タスクスケジューラを開く。
winキー→task...と打っているとタスクスケジューラーが表示される。
「タスクスケジューラ ライブラリ」→「タスクの作成」をクリックする。
タスクの名前を決める。今回はtestとした。
「トリガー」タブを選択し実行する時刻を設定する。
「操作」タブを選択し、実行するバッチファイルとして、先ほど作成した「dir.bat」のフルパスを設定する。
設定した時刻に、バッチ処理が正しく実行されたことを確認する。
指定した時刻にバッチ処理が実行され、テスト.txtのファイルが上書きされた。
今回テストに使用したdirコマンドは、設定したディレクトリ内のフォルダ、ファイル、容量などの情報を表示するもので、テキストファイルに出力するオプションを利用した。そもそもコマンドプロンプトで試行錯誤しながら内容を決定し、バッチファイルを作成する運用がほとんどだろう。今回は、バッチファイルの作成、タスクスケジューラを体験することを目的として記事をまとめた。
ネットワーク上にあるバッチファイルを実行、ネットワーク上に結果ファイルを吐き出す処理行うには、権限の設定を適切に行う必要がある。セキュリティオプションの設定を試行錯誤することになる。筆者は過去に、バッチファイルからエクセルファイルを呼び出して自動処理、結果ファイルを外部ハードティスクに保存する処理を設計したことがあるが、よくコケていた。Pythonで再設計したところ解決した。その話はまた後日にでも、、
“【バッチ処理】自動で定期的にフォルダの要素を書き出す” に対して1件のコメントがあります。
コメントは受け付けていません。