2013-04-22 11 views

Trả lời

12

Nó có nghĩa là "tất cả các tham số trong dòng lệnh".

Ví dụ, nó rất hữu ích khi bạn muốn chuyển tiếp các dòng lệnh từ tập tin thực thi của bạn để chương trình khác:

REM mybatchfile.cmd 
echo You called this with arguments: %* 
echo I will now forward these to the DIR command. 
dir %* 
3

%* mở rộng đến danh sách đầy đủ các đối số được truyền cho tập lệnh.

Bạn thường sử dụng nó khi bạn muốn gọi một số chương trình hoặc tập lệnh khác và chuyển cùng một đối số đã được chuyển cho tập lệnh của bạn.

3

"Các modifier% * là một modifier duy nhất đại diện cho tất cả các đối số được truyền trong một tập tin thực thi Bạn không thể sử dụng công cụ sửa đổi này kết hợp với công cụ sửa đổi% ~. Cú pháp% ~ phải được chấm dứt bằng giá trị đối số hợp lệ. "

Xem: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true

+0

Cảm ơn bạn đã liên kết – feminkk

6

Một điểm quan trọng không được liệt kê trong bất kỳ câu trả lời trước: %* mở rộng để tất cả thông số từ dòng lệnh, ngay cả sau khi một hoạt động SHIFT.

Thông thường một SHIFT sẽ di chuyển tham số %2-%1, %3-%2, vv, và %1 là không còn nữa. Nhưng %* bỏ qua bất kỳ SHIFT, vì vậy danh sách tham số hoàn chỉnh luôn có sẵn. Đây có thể là một phước lành và lời nguyền.