日付フォルダを作成する
mkdir %DATE:/=%
IPMSGでいたずら
@echo off
for /l %%A in (1,1,10) do ipmsg.exe /MSG /SEAL localhost Hello.
pause
大量にでてきます。っていってもこの例は控えめなので10枚ですが。
日付
%date% → 2010/01/30
%time% → 11:29:00.00
%date% → 土 2010/01/30
%date:~0,4%%date:~5,2%%date:~8,2% → 20100130 ※ Win2000 NG
%date:~-10,4%%date:~-5,2%%date:~-2,2% → 20100130 ※ Win2000 OK
C:\>set V=ABCDEFGHIJKL
C:\>echo %V:~5,2%
FG
書式 意味 例
%V% 変数Vの値全体 %V% ⇒「ABCDEFGHIJKL」
%V:~m% m文字目から、最後まで %V:~5% ⇒「FGHIJKL」
%V:~m,n% m文字目から、n文字分 %V:~5,2% ⇒「FG」
%V:~m,-n% m文字目から、最後のn文字分を除いたもの %V:~5,-2% ⇒「FGHIJ」
%V:~-m% 後ろからm文字目から、最後まで %V:~-5% ⇒「HIJKL」
%V:~-m,n% 後ろからm文字目から、n文字分 %V:~-5,2% ⇒「HI」
%V:~-m,-n% 後ろからm文字目から、最後のn文字分を除いたもの %V:~-5,-2% ⇒「HIJ」
%V:c1=c2% 文字c1を文字c2に置換する。それぞれ複数の文字を指定することも可能 %V:ABC=abc% ⇒「abcDEFGHIJKL」
time 1:23
%time:~0,2%%time:~3,2%%time:~6,2% → 「 11204」
set time2=%time: =0%
%time2:~0,2%%time2:~3,2%%time2:~6,2% → 「011204」
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
echo 今日は%yy%年、%mm%月、%dd%日です。
echo.
rem 1日前の日付を計算する
set /a dd=%dd%-1
set dd=00%dd%
set dd=%dd:~-2%
set /a ymod=%yy% %% 4
if %dd%==00 (
if %mm%==01 (set mm=12&& set dd=31&& set /a yy=%yy%-1)
if %mm%==02 (set mm=01&& set dd=31)
if %mm%==03 (set mm=02&& set dd=28&& if %ymod%==0 (set dd=29))
if %mm%==04 (set mm=03&& set dd=31)
if %mm%==05 (set mm=04&& set dd=30)
if %mm%==06 (set mm=05&& set dd=31)
if %mm%==07 (set mm=06&& set dd=30)
if %mm%==08 (set mm=07&& set dd=31)
if %mm%==09 (set mm=08&& set dd=31)
if %mm%==10 (set mm=09&& set dd=30)
if %mm%==11 (set mm=10&& set dd=31)
if %mm%==12 (set mm=11&& set dd=30)
)
うげぇ、バッチファイルで日付操作すんのめんどくさー。
VBSで書いた方がよさそうだな。
ビープ音
- 「echo a」などと書かれたバッチファイルを用意する。
- 適当なバイナリエディタ(例えばQuickBe)で「a」の部分の文字コードを「07」に変更する。
- 実行する。
サーバに何か異常があった場合に知らせるとかに使えないかなぁ。
最終更新:2017年04月06日 23:14