ลบไฟล์ด้วยไวด์การ์ดในโฟลเดอร์ย่อย


9

ฉันใช้ Windows 7 ฉันมีไดเรกทอรีชื่อเช่น dir1 มันมีไดเรกทอรีย่อยบางอย่างเช่น subd1, subd2 และอื่น ๆ แต่ละส่วนย่อยนี้อาจมีไฟล์ที่มีนามสกุล. tmp เช่น "abc_test write.tmp" เป้าหมายของฉัน: เข้าไปในไดเรกทอรี dir1 แล้วลบไฟล์ทั้งหมดด้วย. tmp ในโฟลเดอร์ย่อย ฉันทำ:

set dir=\my_path\dir1
pushd %dir%

และนี่คือปัญหา: ขั้นตอนต่อไปที่ฉันทำ:

del /s "*\*.tmp" 

แต่ได้รับข้อผิดพลาด: ชื่อไฟล์, ชื่อไดเรกทอรี, หรือไวยากรณ์ฉลากปริมาณไม่ถูกต้อง คำถามของฉัน: ฉันจะลบไฟล์ที่มี extention .tmp เป็นโฟลเดอร์ย่อยโดยใช้ wildcard ได้อย่างไร ขอบคุณ

คำตอบ:


10

คำสั่ง DEL ในตัวอย่างของคุณควรอยู่ในรูปแบบนี้:

  • DEL /Q /F /S "*.tmp"

โดยพื้นฐานแล้วคุณไม่จำเป็นต้องลองใช้สัญลักษณ์แทนพา ธ ของโฟลเดอร์ใด ๆ และ/Sสวิตช์จะใช้เพื่อลบไฟล์ที่ระบุจากไดเรกทอรีย่อยทั้งหมดจากไดเรกทอรีที่คุณอยู่เมื่อคุณเรียกใช้คำสั่งและทำซ้ำทั้งหมดจากโฟลเดอร์ย่อยทั้งหมด


แหล่งข้อมูลเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.