トップ 一覧 ping 検索 ヘルプ RSS ログイン

Windows コマンド 拡張子をインクリメントしたファイルを作成するの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!Windows コマンド 拡張子をインクリメントしたファイルを作成する
[スクリプト(Win)]
!key_file.bat
 @echo off
 rem ********************************************************************
 rem 
 rem key_file [キーファイル名(拡張子を除く)] [最大数]
 rem
 rem 呼び出されるたびに、キーファイル名+"."+数値+1 のファイルを作成し、
 rem キーファイル名+"."+数値のファイルを削除する
 rem
 rem 拡張子が、指定された最大数に達したら何も行わない
 rem 
 rem 使用例:key_file.bat "C:\work\KEY_FILE" 3
 rem
 rem ********************************************************************
  
 set /A LIMIT=%2
 set /A CUR_NUM=0
 set /A NEXT_NUM=1
 set KEYFILE="%~1.*"
 
 for %%i in (%KEYFILE%) do (
     call :extension %%i
 for %%keyf in (%KEYFILE%) do (
     call :calc_extension_num %%keyf
 )
 if %NEXT_NUM% LEQ %LIMIT% (
     type NUL > %~1.%NEXT_NUM%
     del %~1.%CUR_NUM%
 )
  
 goto :end
 @echo on
  
 :extension
 :calc_extension_num
     set EXTENSION=%~x1
     set /A CUR_NUM=%EXTENSION:~1%
     set /A TMP_NUM=%CUR_NUM% + 1
     if %TMP_NUM% GTR %NEXT_NUM% (
         set NEXT_NUM=%TMP_NUM%
     )
 :end