แสดงรายการไฟล์ที่มีพา ธ โดยใช้บรรทัดคำสั่งของ Windows


11

โครงสร้างโฟลเดอร์ของฉันในไดรฟ์เป็นเช่นนี้ (ใน Windows):

Folder 1
 Fd1
 Fd2
 Fd3
 Fd4
 Fd5
Folder 2
 Fd1
 Fd2
 Fd3
 Fd4
 Fd5

การจัดเรียงนี้ดำเนินต่อไปสำหรับโฟลเดอร์ 100s ภายในFd1ของแต่ละโฟลเดอร์ xมี.batไฟล์บางไฟล์ ฉันกำลังมองหาวิธีที่จะแยกรายชื่อของ.batไฟล์ที่มีเส้นทางทั้งหมดโดยใช้บรรทัดคำสั่งของ Windows ไปยังไฟล์ข้อความ ด้วยประสบการณ์เพียงเล็กน้อยในการใช้พรอมต์คำสั่งฉันไม่รู้จะทำอย่างไรถึงจะประสบความสำเร็จได้

ฉันต้องการให้ผลลัพธ์เป็นรายการเช่นนี้:

............
D:\Folder 1\Fd1\one.bat
D:\Folder 2\Fd2\two.bat
............

มีคนช่วยฉันได้ไหม

คำตอบ:


31

ถ้าฉันเข้าใจสิ่งที่คุณกำลังมองหาลอง

dir/s/b *.bat

หากใช้งานได้ให้เปลี่ยนเส้นทางไปเป็นไฟล์ข้อความ ....

dir/s/b *.bat > textfile.txt

นอกจากนี้คุณยังอาจพบว่ามันมีประโยชน์ที่จะมีรายชื่อของสวิตช์บรรทัดคำสั่งสำหรับ dir คำสั่ง


4

ฉันขอแนะนำให้ใช้คำสั่ง FOR ด้วยสวิตช์ / R

ตัวอย่างเช่นหากต้องการค้นหาไฟล์ทั้งหมดในและภายใต้ไดเรกทอรีปัจจุบันให้ใช้:

for /r %i in (*) do @echo %i

ในการเริ่มค้นหาจากไดเรกทอรีที่กำหนดเองให้ใช้คำสั่งในรูปแบบนี้:

for /r "C:\TMP" %i in (*) do @echo %i

และสุดท้ายการค้นหาแบตช์ไฟล์ทั้งหมดภายใต้ไดเรกทอรี c: \ bin คุณสามารถทำได้:

for /r "c:\bin" %i in (*.bat) do @echo %i

จุดหนึ่งที่ฉันควรทำคือถ้าคุณใช้คำสั่งนี้ในไฟล์แบตช์คุณจะต้องเพิ่มเครื่องหมาย% เป็นสองเท่าดังนั้นตัวอย่างเหล่านี้จะกลายเป็น:

for /r %%i in (*) do @echo %%i
for /r "C:\TMP" %%i in (*) do @echo %%i
for /r "c:\bin" %%i in (*.bat) do @echo %%i

การใช้ i เป็นตัวแปรที่นี่ถือเป็นการจ่ายเงินโดยสมบูรณ์และถูกฝังครั้งแรกในตัวฉันในวัน FORTRAN ของฉัน

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