Đôi khi, việc cmd shell không có khả năng mở rộng đường dẫn ký tự đại diện thực sự có thể là một sự bất tiện. Tôi đã phải chuyển 100 tệp trong một thư mục cho một chương trình và không thể gõ * .ext. Thay vào đó, tôi đã sử dụng 'ls' của mingw để kết xuất danh sách vào một tệp, sau đó thay thế các dòng mới bằng dấu cách, sao chép và dán vào cmd. Khá là một cơn ác mộng.
Tôi nghi ngờ câu trả lời sẽ là không, nhưng có ai đã xử lý vấn đề này hay đưa ra bất kỳ cách nào để làm cho việc này dễ dàng hơn không?
I suspect the answer will be no, but has anyone dealt with this or come up with any way to make this easier?
Trên thực tế, tôi đang gặp vấn đề ngược lại, tôi đang cố gắng tìm ra cách để trình thông dịch lệnh xử lý danh sách của nó dưới dạng chuỗi và ngăn không cho chúng trả lời chúng dưới dạng ký tự đại diện. Ví dụ, for %i in (foobar baz really?) do @echo %i
sẽ đối xử với mục cuối cùng ( really?
) như là một ký tự đại diện tên tập tin, và bỏ qua nó nếu không có tập tin có tên really1
, reallyz
vv ☹
?
không phải là ký tự hợp pháp cho tên tệp trong hệ thống tệp Windows. Ký tự chỉ có thể được hiểu là ký tự đại diện. Xem Đặt tên tệp, đường dẫn và không gian tên trên MSDN và sử dụng các ký tự đại diện trong TechNet.