Tuesday, October 15, 2013

วิธีเขียน batch file ให้เปลี่ยนชื่อไฟล์เป็นวันเดือนปี(กันลืม)

เรียกว่าเขียนกันลืมเลยก็ได้

โจทย์คือต้องการทำ batch file โดยให้เปลี่ยนชื่อไฟล์ให้เป็น ชื่อไฟล์ ตามด้วยวันที่
ดังนั้นให้เขียนแบบนี้

set d=%date:~-4,4%%date:~-7,2%%date:~0,2%
set d=%d: =_%
set t=%time:~0,2%%time:~3,2%%time:~6,2%
set t=%t: =0%
RENAME "TEST.TXT" "TEST_%d%_%t%.TXT"

จากเวบนี้ https://groups.google.com/forum/#!topic/alt.msdos.batch/YOv9hhlFMK4

แต่หลังจากลอง run batch ไฟล์ กลับได้ผลเป็นแบบนี้

TEST_201315Tu_145046.TXT

ก็เลยต้องมานั่งปรับต่อโดยให้เขียนแบบนี้


set d=%date:~-4,4%%date:~-10,2%%date:~7,2%
set d=%d: =_%
REM set t=%time:~0,2%%time:~3,2%%time:~6,2%
set t=%time:~0,2%
set t=%t: =0%
RENAME "TEST.TXT" "TEST_%d%_%t%.TXT"

เนื่องนี้ format ของวันที่มันไม่เหมือนกัน

No comments: