BAT


バッチファイル

文法

曜日で分岐

(2012-05-01 (火) 12:01:07)

for /F "usebackq delims=" %%i in (`ruby -e 'print Time.now.wday'`) do call :main%%i&goto :eof
goto :eof

:main2
	echo 今日は火曜日
	goto :eof

ライブラリ(コマンド)

その他

レジストリの設定をバックアップする(変化がなければファイルを変更しない工夫入り)

(2013-04-26 (金) 16:16:14)

	reg export HKEY_CURRENT_USER\Environment env.reg.temp || goto error

	fc env.reg env.reg.temp || copy env.reg.temp env.reg || goto error
	
	del env.reg.temp || goto error

	goto :eof

:error
	pause


破損ZIPファイルの検出

(2013-02-22 (金) 05:13:07)

for %%i in (*.zip) do zip -T "%%~i" | ruby -e 'exit ($stdin.read =~/zip warning^|zip error/).to_i' || move "%%~i" broken\

環境変数 folder_* で指定されているパスが存在するかどうかを一括チェック

(2012-05-05 (土) 08:21:18)


呼び出し側

set folder_src=c:\windows
set folder_dst=c:\windows.bak
set folder_dmy=x:\y\z

call :checkfolderui
pause
goto :eof

チェックコード

:checkfolder
	for /F "usebackq tokens=1,2 delims==" %%i in (`set folder_`) do (
		if not exist "%%~j" echo %%~i:[%%~j]が存在しません。&exit /b 1
	)
	exit /b 0


:checkfolderui
	call :checkfolder || (
		echo エラー!
		echo フォルダを作成してENTERを押してください。
		echo バッチファイルの実行を中止したい場合はウィンドウを閉じてください。
		pause>NUL
		goto checkfolderui
	)

カレントディレクトリのファイル名をMD5値でリネーム

(2012-04-27 (金) 20:45:41)

要MD5SUM

for %i in (*) do for /f "usebackq delims= " %j in (`md5sum "%~i"`) do ren "%~i" "%j%~xi"

n日ごとのローテーション

(2013-02-18 (月) 15:28:14)

ruby -r date -e 'exit(Date.today.jd %% 3)' 
set n=value%ERRORLEVEL%
echo %n%


実行結果

value2

最新の20件

2013-09-10 2013-09-09 2014-05-14 2014-03-08 2014-02-11 2013-12-19 2013-09-09 2013-06-21 2013-05-03 2013-04-27 2013-04-26
  • BAT
2013-04-20 2013-03-21 2012-07-02 2012-06-30 2012-05-10 2012-04-26 2012-04-19 2012-03-25

今日の14件

  • counter: 282
  • today: 1
  • yesterday: 0
  • online: 1