วิธีการลบไฟล์ด้วยไฟล์พร้อมแบทช์


1

ฉันสงสัยว่าฉันจะทำให้ไฟล์แบทช์ของฉันลบไฟล์ทีละไฟล์ในโฟลเดอร์ที่ฉันเลือกได้อย่างไรและ echo แต่ละไฟล์จะถูกลบหลังจากนั้น

คำตอบ:


0

สำหรับแบทช์ไฟล์ของคุณเปลี่ยน%fเป็น%%f

คุณไม่ต้องการคำสั่งสัมผัสมันมาจาก gnuwin32 หรือ cygwin ฉันใช้มันเพื่อสร้าง 3 ไฟล์, qw และ e

C:\blah>touch q w e<ENTER>

C:\blah>for %f in (*.*) do @(echo deleting %f & del %f)
deleting e
deleting q
deleting w

C:\blah>

ทราบ - เพื่อทำความเข้าใจหรือทำตั้งแต่เริ่มต้นลองfor %f in (*.*) do echo %fและหนึ่งสามารถทำงานได้จากที่นั่น


คุณช่วยอธิบายทุกคำสั่งบนบรรทัดได้ไหม "C: \ blah>" ฉันใหม่เกินไปเช่นกันและมันค่อนข้างสับสน
Xaxis

@Xaxis คุณเคยเปิดพร้อมท์ cmd แล้วและเห็นว่ามันพูดเช่นC:\Users\Xaxis> คุณทราบหรือไม่ว่า c: \ users \ Xaxis เป็นไดเรกทอรีโฟลเดอร์ และคุณได้ลอง C:\Users\harvey>dir<ENTER> แล้วหรือยังและลองสร้างไฟล์ค้างคาวแล้วเขียนคำว่า dir และเรียกใช้ไฟล์แบตช์ หากคุณไม่รู้จักพื้นฐานเหล่านั้นคุณก็ไม่ควรที่จะเข้าใจคำสั่ง 'for' ของ cmd
barlop

ฉันทำสิ่งเหล่านั้นแล้ว แต่ฉันได้ทำการวิจัยเล็กน้อยเพื่อชี้แจงคำตอบของคุณให้ชัดเจนยิ่งขึ้นและวิ่งผ่านมันทีละชิ้น ขอบคุณสำหรับความช่วยเหลือ!
Xaxis

1
@Xaxis - ใช้คำสั่งFOR /?เพื่อรับข้อมูลเกี่ยวกับ for loop
สว่าง

1
@ Liturgist err litgurist, คำสั่ง For เป็นคำสั่งที่ซับซ้อนที่สุดในหน่วย cmd หากเป็นกรณีที่เขาไม่ทราบว่าคุณสามารถพิมพ์/?คำสั่งเพื่อดูตัวเลือกได้เขาก็ควรเรียนรู้คำสั่งอื่น ๆ เพิ่มเติมโดยละเอียดก่อนที่จะดำดิ่งลงไป (และเรียกมันว่า a for loop เป็นการทำให้เข้าใจผิดเล็กน้อยเพราะถ้าคุณทำ / f ด้วย tokens = "... " ดังนั้นเนื้อหาของคำสั่ง for หลังจากที่ 'do' จะทำงานเพียงครั้งเดียวดังนั้นบางทีเราไม่ควร เรียกมันว่า for loop
barlop
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.