2012-03-09 3 views
0

со ссылкой на следующий фрагмент кодапакетный сценарий приходит завершение, если XCOPY не может найти файл

xcopy D:\CBS_Upgrade\CBS2.2_DEV_B%CBSBuild%\DDLs-Lending Database\CBS-Upgrade\DDLs-Lending /S 

Я хотел выяснить, почему сценарий завершения и не выполняет команды после этого? Есть ли способ исправить это?

Я знаю, что файла там не будет, но я хотел, чтобы скрипт переходил к следующим командам.

Сообщение показано xcopy является

File not found - DDLs-Lending 
0 File(s) Copied. 

ответ

3

Простым решением является использование переключателя /c, который инструктирует команду xcopy игнорировать любые ошибки. Полная документация для команды xcopy доступна here on MSDN.

Но Joey прав, командные файлы будут продолжать выполняться независимо от того, не сработает ли содержащаяся в нем индивидуальная команда. Поэтому я не совсем уверен, в чем проблема, которую вы пытаетесь решить.

2

Пакетный файл будет продолжаться, даже если команда не выполняется. Если вы просто хотите подавить вывод ошибки, вы можете добавить команду 2>nul в команду.

2

Пакетные файлы будут завершаться под окнами, если выполняются определенные сложные операции (например, трубопроводы). Например, следующая команда завершит пакетный файл, если awk не существует:

awk -? | find "*****" 
echo never gets here