Я видел использование% * в пакетных файлах и командных строках. Googling не дал мне никаких результатов. Может ли кто-то объяснить типичное использование% * с примером. Спасибо
Что означает% * в пакетном файле
Ответ 1
Это означает "все параметры в командной строке".
Например, это полезно, когда вы хотите переслать командную строку из вашего пакетного файла в другую программу:
REM mybatchfile.cmd
echo You called this with arguments: %*
echo I will now forward these to the DIR command.
dir %*
Ответ 2
Один важный момент, который не указан ни в одном из предыдущих ответов: %* расширяется до всех параметров из командной строки даже после операции SHIFT.
Обычно a SHIFT будет перемещать параметр %2 в %1, %3 в %2 и т.д., а %1 больше не доступен. Но %* игнорирует любой SHIFT, поэтому полный список параметров всегда доступен. Это может быть и благословением, и бичем.
Ответ 3
%* расширяется до полного списка аргументов, переданных в script.
Обычно вы используете его, когда хотите вызвать какую-либо другую программу или script, и передать те же аргументы, которые были переданы вашему script.
Ответ 4
"Модификатор% * - это уникальный модификатор, который представляет все аргументы, переданные в пакетном файле. Вы не можете использовать этот модификатор в комбинации с модификатором% ~. Синтаксис% ~ должен быть прерван допустимым значением аргумента."
Смотрите: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true