ハムスターに飼われる院生のブログ

自分用メモが中心のブログです。

batファイル

cpuの空きを確認してから処理を行うbatファイル

test.exe がコマンドライン引数 1 2 3 4 5 を取るとする。 この実行ファイルを最大で100回繰り返したいときに、 cpuの空きを確認して空きがあれば実行、空きがなければ600秒待機するバッチファイルを作成した。 今回はcpuが小数点切り捨て70%以下の使用率で…

バッチファイルのみを他のフォルダに移動させる

任意のバッチファイルを実行後に、 バッチファイルを作業用のディレクトリに置きっぱなしにしておくと 意図せずクリックして作業時間をロスすることがあった。 これを防ぐため、実行するバッチファイルの末尾に以下の文を加えた。 mkdir batfiles move *.bat…

下の階層のディレクトリで該当名のものをすべて削除するバッチファイル

@echo off @setlocal enabledelayedexpansion rem rem 以下の階層にあるTestFolderをすべて削除するバッチファイル rem For /r %%d In (TestFolder) Do Rmdir /s /q "%%d" tree /f pause exit コマンドプロンプトに直接入力する場合は For /r %d In (TestFol…

フォルダ内にあるインプットファイル全てから計算条件を読み込んで実行するバッチファイル

定時デバッグ用に作成したバッチファイルを以下に示す。 以下の記事で示したバッチファイルの亜種となっている。 chicagopile1-75.hatenablog.com【実行時の状況】 ・test.exeは引数を2つとる実行ファイル ・インプットファイル全てはinput*.txtという名称で…

実行日をフォルダ名に持つフォルダ内に結果を出力させるbatファイル

表題の通りのbatファイルを作った。 基本的には以下の記事の亜種のbatファイルとなっている。 chicagopile1-75.hatenablog.com 【実行時の状況】 ・test.exeという実行ファイルは引数を2つとり、計算結果を標準出力してくる。 ・input.txtというファイル内に…

テキストファイルからコマンドライン引数を指定して実行し、はじめの引数ごとにフォルダ分けして出力するバッチファイル

exefile.exeという実行ファイルが6つのコマンドライン引数をとる状態での話。 このコマンドライン引数を変えて大量に計算したい場合、 インプットファイルの中に引数を記し、そこからコマンドライン引数を読み込んで実行することができる。 このためのバッチ…

バッチファイルで2重ループ

バッチファイルで2重ループを作成する時のメモ。 C++等と同じ要領で2重ループを作成しても動かなかったので、 以下に示すコードで2重ループを作成した。一つ目のループの中でDoCalcを呼び出すことで解決した。 @echo off @setlocal enabledelayedexpansion f…

引数の値を計算結果のファイル名にして計算を実行する

表題の通りのバッチファイルを作成したので書きとめておく。 出力用のファイル名を変えて勝手に出力ファイルを作成できるようにした。コマンドライン引数をとるtest.exeという実行ファイルに 0~5の引数を与えて実行する場合の例を示す。 なお、test.exeは実…

引数を変えながら並列に計算を実行するバッチ

5計算ずつ並列にし、計100パターン実行したい場合を考える。以下のようにbatファイルを書くと実行することができる。 まず親バッチを以下に示す。 @echo off @setlocal enabledelayedexpansion for /l %%i in (0,5,100) do ( call son.bat %%i ) pause 子バ…

乱数シードを変えてプログラムを繰り返し実行する

乱数シードを少しずつ変えてプログラムを繰り返し実行する時用のメモ。C++とbatファイルに関する話。メイン関数自体に引数を渡すようし、batファイルで異なる引数を与えることで実現させる。乱数のシードをコマンドラインから与えられるようにするため、main…