ฉันพยายามเรียกใช้ mysqldump ด้วยชื่อไฟล์วันที่
mysqldump -umyuser -pmypass mydatabase > c:\backup\%DATE%.sql
ปัญหาคือชื่อไฟล์กำลังพิมพ์เป็น 6/17/12.sql
. มีวิธีในการเปลี่ยนอักขระคั่นเมื่อพยายามเขียนไฟล์หรือไม่?
ฉันพยายามเรียกใช้ mysqldump ด้วยชื่อไฟล์วันที่
mysqldump -umyuser -pmypass mydatabase > c:\backup\%DATE%.sql
ปัญหาคือชื่อไฟล์กำลังพิมพ์เป็น 6/17/12.sql
. มีวิธีในการเปลี่ยนอักขระคั่นเมื่อพยายามเขียนไฟล์หรือไม่?
คำตอบ:
รูปแบบวันที่ของระบบของคุณอาจถูกตั้งค่าแตกต่างจากของฉัน (ฉันมี "จันทร์" นำหน้า 6/17/13) แต่คุณควรจะสามารถแทนที่ตัวแปรใหม่สำหรับวันที่เช่นนี้
set datefix=%DATE%
set datefix=%DATE:/=-%
เครื่องหมายโคลอนอนุญาตให้รู้ว่าคุณกำลังทำการแทนที่และจะตั้งค่า "/" เป็น "-" ทั้งหมด (เลือกสิ่งที่คุณต้องการได้ แต่จำไว้ว่าบางคนต้องหลบหนี)
เอาท์พุท:
Mon 06-17-2013.txt
แก้ไข: ดังนั้นแบทช์ของคุณจะเป็นสามบรรทัด ทั้งสองข้างต้นแล้วสายของคุณมีลักษณะเช่นนี้:
mysqldump -umyuser -pmypass mydatabase > c:\backup\%datefix%.sql