(Это в основном переписывание ответа Уэйна , но с разборчивостью вокруг каретки прояснилось. Так что я опубликовал это как CW. Я не стесняюсь редактировать ответы но полностью переписать их кажется неуместным.)
Вы можете разбить длинные строки с помощью каретки (^
), просто помните, что каретка и символ новой строки полностью удаляются из команды , поэтому, если вы поставите ее там, где пробел потребуется (например, между параметрами), обязательно включите также пробел (либо перед ^
, либо в начале следующей строки - этот последний выбор может помочь сделать его более понятным, что это продолжение).
Примеры: (все протестированы на Windows XP и Windows 7)
xcopy file1.txt file2.txt
можно записать как:
xcopy^
file1.txt^
file2.txt
или
xcopy ^
file1.txt ^
file2.txt
или даже
xc^
opy ^
file1.txt ^
file2.txt
(Последнее работает, потому что между xc
и ^
нет пробелов и пробелов в начале следующей строки. Поэтому, когда вы удаляете ^
и символ новой строки, вы получаете .. . xcopy
.)
Для удобочитаемости и здравомыслия, вероятно, лучше разбивать только между параметрами (обязательно указывайте пробел).
Убедитесь, что ^
является , а не последней вещью в пакетном файле, так как , кажется, является серьезной проблемой с этим .