Я думаю, що я наткнувся на помилку в пакетному файлі, оскільки він був написаний з кінцями рядка Unix. Це відома проблема із cmd.exe, що працює у пакетних файлах Windows?
Я думаю, що я наткнувся на помилку в пакетному файлі, оскільки він був написаний з кінцями рядка Unix. Це відома проблема із cmd.exe, що працює у пакетних файлах Windows?
Відповіді:
Це насправді не "помилка" ... як це побічна конструкція. Нові рядки Windows визначаються як "\ r \ n" ... або комбінація "Повернення перевезення" та "Нова лінія" ... тоді як аромати * nix вважають за краще опускати повернення каретки. Ви завжди повинні використовувати "\ r \ n" у будь-якому випадку в Windows, де це можливо. Все інше може трактуватися неправильно ... і спричинити багато несподіваних результатів.
Для пакетних файлів не здається різниці між закінченнями рядків Unix та закінченнями рядків Windows.
goto
, call
або навіть створення змінних для передачі рядків працює з обома стилями.
Оскільки пакетний аналізатор видаляє повернення каретки безпосередньо після фази розширення відсотків, вони ніколи не відіграватимуть великої ролі.