未だ来ぬ未来

ブログ

batファイルを使って任意の名前のファイルとフォルダを作成する

背景

社内のレポート作成手順がめんどくさく、フォルダを作成し既にあるフォーマットファイルをその中にコピーして、そのファイル名をフォルダと同一にするという作業が必要だった。
めんどくさいのでフォルダ・ファイルの自動生成バッチを作成。

想定ファイル構成

- 実行前

./
 |-Book1.xlsx
 |-make_file.dat (作成バッチファイル)

- 実行後

./  
 |- Book1.xlsx
 |-make_file.dat
 |- new_name
           |-new_name.xlsx


任意の名前を入力するとフォルダが作成される。さらにフォルダ内にBook1.xlsxがコピーされ、ファイル名がフォルダと同名になる。このプログラムを応用することで好きなファイル・フォルダ名でファイル構造を自動作成することができるかと思う。

実行方法

make_file.datをクリック

make_file.dat

〜
@ECHO OFF

:INPUT_START
ECHO +-------------------------------------------------------+
ECHO  Please write file name
ECHO +-------------------------------------------------------+
SET INPUT_STR=
SET /P INPUT_STR=

IF "%INPUT_STR%"=="" GOTO :INPUT_START

REM 同名フォルダがない場合のみディレクトリ、ファイル作成
IF Exist .\%INPUT_STR% ( 
 ECHO +-------------------------------------------------------+
 ECHO "%INPUT_STR% is already exist"
 ECHO +-------------------------------------------------------+
 ) 
IF NOT EXIST .\%INPUT_STR% ( 
 MKDIR .\%INPUT_STR%
 COPY .\Book1.xlsx .\%INPUT_STR%\%INPUT_STR%.xlsx
 ECHO +-------------------------------------------------------+
 ECHO  file name to make is [%INPUT_STR%].
 ECHO +-------------------------------------------------------+
 )
PAUSE
EXIT
〜