Tôi cần lệnh Windows để xóa một thư mục và tất cả các tệp chứa nó nhưng tôi không muốn thấy bất kỳ lỗi nào nếu thư mục đó không tồn tại.
Câu trả lời:
Chuyển hướng đầu ra của del
lệnh thành nul. Lưu ý rằng 2
, để chỉ ra lỗi đầu ra nên được chuyển hướng. Xem thêm câu hỏi này , và đặc biệt là tài liệu công nghệ Sử dụng các toán tử chuyển hướng lệnh .
del {whateveroptions} 2>nul
Hoặc bạn có thể kiểm tra sự tồn tại của tệp trước khi gọi del
:
if exist c:\folder\file del c:\folder\file
Lưu ý rằng bạn có thể sử dụng if exist c:\folder\
(có dấu \
) để kiểm tra xem có phải c:\folder
là thư mục chứ không phải tệp hay không.
rmdir /s /q some\where\myFolder 2>nul
rmdir
= rd
) mà dbenham đã đưa ra chính xác 6 năm trước
Chuyển hướng stderr đến nul
rd /q /s "c:\yourFolder" 2>nul
Hoặc xác minh rằng thư mục tồn tại trước khi xóa. Lưu ý rằng dấu cuối \
là quan trọng trong điều kiện IF.
if exist "c:\yourFolder\" rd /q /s "c:\yourFolder"
Đối với tôi trên Windows 10, những điều sau đây đang hoạt động rất tốt:
if exist <path> rmdir <path> /q /s
q
là viết tắt của "xóa mà không cần hỏi" và s
là viết tắt của "xóa tất cả các thư mục con và tệp trong đó".
Và bạn cũng có thể kết hợp lệnh:
(if exist <path> rmdir <path> /q /s) && <some other command that executes after deleting>
Ở trên đi kèm với Y hoặc N trong lời nhắc. Vì vậy, tôi đã sử dụng những thứ sau để thay thế và nó hoạt động hoàn hảo.
if exist cddd rmdir cddd
Hy vọng điều này sẽ giúp ai đó.
Chúc mừng.