Cách xem nhanh danh sách tệp hoặc định dạng tệp cụ thể trong một thư mục

TKB
Đôi lúc bạn cần kiểm tra tên các tệp trong một thư mục hoặc lọc ra loại tệp có định dạng cụ thể. Nếu tìm xem thủ công sẽ rất mất nhiều thời gian, do đó bạn có thể sử dụng lệnh DIR kiểm tra tệp kết hợp với FINDSTR tìm và lọc lấy định dạng tệp cụ thể để kiểm tra cho nhanh.

Ngoài ra trong quá trình viết batch script để thực thi một hành động nào đó mà cần có lệnh kiểm tra các tập tin trong một thư mục cụ thể chẳng hạn muốn xóa, sao chép, di chuyển..., sau khi hành động xảy ra nó sẽ trả về lại lệnh kiểm tra tập tin trong thư mục hay xem lại danh sách trong thư mục còn tập tin mà ta đã xóa, sao chép, di chuyển..., hay không.

Cấu trúc của lệnh liệt kê tập tin trong thư mục có dạng sau:

Copy

dir /b <đường dẫn tới thư mục>


Ví dụ:

Copy

dir /b C:\Windows\servicing\Packages


Mẹo: Bạn có thể thay thế đường dẫn bằng các thuật ngữ viết gọn dưới đây

Copy

C: = %HOMEDRIVE% = %SystemDrive%

C:\Windows = %SystemRoot% = %windir%

C:\Program Files = %ProgramFiles% = %ProgramW6432%

C:\Program Files (x86) = %ProgramFiles(x86)%

C:\ProgramData = %ALLUSERSPROFILE% = %ProgramData%

C:\Users\User_Name\AppData\Roaming = %APPDATA%

C:\Program Files\Common Files = %CommonProgramFiles%

C:\Program Files (x86)\Common Files = %CommonProgramFiles(x86)%

C:\Program Files\Common Files =%CommonProgramW6432%

C:\Users\User_Name = %HOMEPATH%

C:\Users\User_Name\AppData\Local = %LOCALAPPDATA%

C:\Users\User_Name\AppData\Local\Temp = %TEMP%

C:\Users\User_Name = %USERPROFILE%

Computer Name = %COMPUTERNAME%

User Name = %USERNAME%


Như vậy với ví dụ ở trên ta có thể thay như sau:

Copy

dir /b %SystemRoot%\servicing\Packages

Sử dụng DIR kết hợp FINDSTR

Sử dụng FINDSTR lọc loại tệp, ví dụ trong thư mục Packages chỉ tìm các tệp có tên Defender

Copy

dir /b "C:\Windows\servicing\Packages" ^| findstr /c:Defender


Hoặc chỉ tìm các tệp có tên Defender, Internet-Browser, ContentDeliveryManager

Copy

dir /b "C:\Windows\servicing\Packages" ^| findstr /c:Defender /c:Internet-Browser /c:ContentDeliveryManager


Hoặc chỉ tìm các tệp có tên Defender nhưng lại lọc lấy loại tệp .mum

Copy

dir /b "C:\Windows\servicing\Packages" ^| findstr /i /r /c:Defender.*mum


Bây giờ ta sẽ viết tệp batch để khi chạy nó sẽ liệt kê danh sách các tập tin trong thư mục mà ta muốn tìm và để nhìn không đơn điệu ta sẽ thêm số thứ tự đằng trước cho đẹp, Nội dung của tập tin batch như sau:

Copy

@echo off

title Packages

setlocal enabledelayedexpansion

set /a num=0

set path=%SystemRoot%\servicing\Packages

echo.ID   Packages

echo.

for /f %%a in ('dir /b "%path%" ^| findstr /i /r /c:Defender.*mum') do (

  set /a num=num+1

  echo.!num!   %%a

)

echo.

pause


Lưu lại với tên ví dụ list.cmd định dạng All file và Encoding:ANSI. Chuột phải tệp batch vừa tạo chọn Run as adminstrator

About the author

TKB
Tôi đi viết blog dạo...