Các thư mục không khó để tạo nhưng nếu bạn có cấu trúc thư mục phức tạp và mất nhiều thời gian để tạo (và đặt tên cho đúng), bạn có thể không muốn tạo lại nó trừ khi phải làm. Bạn có thể sao chép cấu trúc thư mục khá dễ dàng và bỏ qua các tệp trong đó, nhưng nếu bạn chỉ muốn xóa tất cả các tệp trong thư mục trong khi vẫn giữ lại cấu trúc thư mục phức tạp mà bạn đã tạo, bạn cũng có thể làm điều đó. Giữa hai phương pháp, bạn có thể lựa chọn. Chúng tôi sẽ giải thích cách bạn có thể xóa tệp nhưng vẫn giữ thư mục bằng lệnh PowerShell đơn giản.
Xóa tệp nhưng giữ lại các thư mục
Bạn không cần quyền quản trị cho việc này trừ khi bạn đang xóa các tệp khỏi thư mục gốc của ổ C. Nếu bạn đang xóa chúng khỏi thư mục người dùng của mình hoặc bất kỳ ổ đĩa nào khác, nội bộ hay bên ngoài, thì quyền người dùng bình thường là đủ.

Mở PowerShell và chạy lệnh bên dưới. Thay thế 'đường dẫn đến thư mục' bằng đường dẫn hoàn chỉnh đến thư mục mà bạn muốn xóa tệp. Lệnh này sẽ xóa tất cả các tệp khỏi thư mục này, và bất kỳ tệp nào nằm trong các thư mục con bên dưới nó. Thao tác xóa không gửi tệp vào Thùng rác, vì vậy hãy đảm bảo bạn đã sao lưu chúng trước.
Yêu cầu
Get-ChildItem -Path "đường dẫn đến thư mục" -Có bao gồm *. * -Tập tin -Recurse | foreach {$ _. Delete ()}
Thí dụ
Get-ChildItem -Path "D: \ Desktop \ Jan 13-17" -Include *. * -File -Recurse | foreach {$ _. Delete ()}

Lệnh này cũng có thể được sửa đổi để nhắm mục tiêu một loại tệp cụ thể. Để làm được điều đó, bạn cần thay đổi những điều sau;
*. *
Thay dấu hoa thị thứ hai bằng phần mở rộng tệp cho các tệp bạn muốn nhắm mục tiêu. Ví dụ: nếu bạn muốn xóa tất cả các tệp văn bản khỏi một thư mục, bạn sẽ sử dụng lệnh bên dưới.
Get-ChildItem -Path "đường dẫn đến thư mục" -Có bao gồm * .txt -File -Recurse | foreach {$ _. Delete ()}
Tất cả các tệp khác sẽ được giữ nguyên. Như trước đây, các tệp sẽ không được gửi vào Thùng rác, vì vậy hãy sao lưu chúng trước khi bạn xóa chúng. Lệnh này cũng có thể được sử dụng để xóa một tệp có cùng tên và tồn tại trong nhiều thư mục, ví dụ: image.png. Một lần nữa, bạn sẽ sửa đổi một chút với hai dấu hoa thị. Lệnh sẽ giống như sau.
Get-ChildItem -Path "đường dẫn đến thư mục" -Gói image.png -Tập tin -Recurse | foreach {$ _. Delete ()}
Có những tiện ích xóa tệp nâng cao có thể thực hiện điều này nhưng những tiện ích tốt nhất thường phức tạp để tìm ra. Lệnh này rất dễ chạy và ít có khả năng xảy ra lỗi hơn vì không có gì dẫn đến việc các thư mục bị xóa.