Назад | Перейти на главную страницу

вы можете суммировать внутри функции или использовать '!' в пределах '!' в cmd?

Возникли трудности с задержкой расширения в cmd.

Это может быть глупый вопрос, но есть ли способ суммирования внутри функции (то есть без 'set') или использования ! в пределах ! (или что-то в этом роде); например мог бы ~%%n+%y% в приведенном ниже случае следует рассматривать как сумму его частей, используя скобки, или я должен просто взглянуть на это под другим углом?

for /l %%n in (10 1 36) do (
for /f %%a in ("!alpha:~%%n+%y%,1!") do (
set "code=!code:%%n=%%a!"))

Любая помощь будет принята с благодарностью. Спасибо

  • Единственный способ выполнять математические вычисления (32-битное целое число со знаком) в пакетном режиме - использовать set /a команда.
  • вы можете принудительно использовать другой тип DelayedExpansion с помощью псевдовызова с помощью echo и set (к сожалению не if) и удвоение знаков процента вокруг обычных переменных.

Похоже, вы хотите зашифровать / зашифровать текст в var code по алфавиту. IMO ваш подход не будет работать таким образом, потому что вы также измените уже измененные символы.

См. Эту ссылку новые функции:: chr,: asc,: asciiMap чтобы помочь вам в вашей задаче.