2013-06-14 14 views

Trả lời

27

trong trường hợp này bạn cần phải thoát khỏi> như thế này

for /F %%F in ('dir /B %* 2^> nul') do (
+10

Microsoft sử dụng thực tập để thực hiện lệnh shell và chúng ta phải sống với nó trong phần còn lại của cuộc sống ... – bambams

-5

Tôi tin rằng bạn cần một không gian khoanh vùng giữa "2" và ">". Nếu không có dấu phân cách đó, kết quả kiểm tra dir của tôi vẫn hiển thị trên màn hình. Hơn nữa, tôi tin rằng bằng cách gửi đầu ra của lệnh dir đến null sẽ không cung cấp bất kỳ dữ liệu nào cho bộ được xử lý.

+3

Không. Thay đổi '2>' thành '2>' sẽ chuyển hướng STDOUT thay vì STDERR. việc xử lý danh sách thư mục thực tế. Như @RGuggisberg đã chỉ ra chính xác, toán tử chuyển hướng phải được thoát trong lệnh lồng nhau. –