Я старожил, новичок в пакетном программировании DOS. У меня есть то, что, как я думаю, является очень простым пакетным сценарием, то есть не работает. Я искал похожие сообщения и не нашел ни одного подходящего.
Я запускаю приведенный ниже сценарий на XP. Моя цель - проверить свободное место на диске, прежде чем продолжить, но я столкнулся с проблемой при сравнении двух чисел , поэтому приведенный ниже сценарий содержит только эту логику. У меня есть жестко запрограммированные числа, чтобы показать проблему, а именно ... Сравнение (если x gtr y), похоже, не работает, и поэтому логика ветвления идет не в то место. Либо это, либо я ошибаюсь где-то еще в операторе IF. (Некоторые операторы эха не нужны - они предназначены для отладки - но я оставил их пока.)
Любое разъяснение того, где я ошибаюсь, было бы ОЧЕНЬ благодарно.
Спасибо ...
@echo off
set Free=217522712576
set Need=20000000000
echo Free=%Free%
echo Need=%Need%
echo on
IF %Free% GTR %Need% (GOTO Sufficient_Space) ELSE GOTO Insufficient_Space
@echo off
:Insufficient_Space
@ECHO INSUFFICIENT SPACE
GOTO DONE
:Sufficient_Space
@ECHO SUFFICIENT SPACE
:DONE