Восклицательные знаки (!) В пакетных файлах DOS ссылаются на промежуточное значение, полезно, если вы находитесь в цикле for.Если бы вы использовали вместо этого% (в цикле), он возвращал бы одно и то же значение снова и снова.
Строки 3 и 4 устанавливают для SOME_VARIABLE промежуточное значение SOME_ARGUMENTS: \ = \"и SOME_ARGUMENTS:" = \ "соответственно.Опять же, я предполагаю, что эти строки взяты из цикла.
Что касается назначений переменных, назначения переменных Powershell работают следующим образом:
$myVariable = "my string"
~ dp0 (в пакете DOS) переводитв путь (с буквой диска) текущего файла bat.Вы можете получить это в Powershell, выполнив «get-location».
Почему кто-то должен был бы установить переменную для STAR (*), я не знаю, поэтому я предполагаю, что была какая-то проблема с кодированием или другиепричина, по которой они не могли просто использовать звездочку.
~ n0 Я не уверен в этом;может быть, кто-то еще знает, что это такое.