2012-01-31 2 views
6

Я хочу, чтобы скопировать некоторые файлы в diffent диски USB, и вы хотите использовать START, чтобы открыть несколько консолей следующим образом:Как выйти с помощью «Пуск» в пакетных файлах MSDOS

start copy a.txt h: 
start copy a.txt i: 
start copy a.txt j: 

Но каждый раз, когда я бегу пакетный файл, есть 3 консоли без выхода. Как я могу реализовать эту функцию EXIT БЕЗ с использованием 3 пакетных файлов и "вызов" команды, как:

copy.bat:

call a.bat 
call b.bat 
call c.bat 
exit 

и три называемые пакетные файлы как:

a.bat:

start copy a.txt h: 
exit 

b.bat:

start copy a.txt i: 
exit 

c.bat:

start copy a.txt j: 
exit 

Я уже пробовал это, но он не работает:

start copy a.txt h: && exit 
start copy a.txt i: && exit 
start copy a.txt j: && exit 
+0

Отредактированный мой ответ, это работает :) –

+0

Просто из любопытства; почему использование 'call' не является опцией? –

ответ

13

Вам нужно бежать & & поэтому она становится частью команды, выполняемой начала, а не родительского пакетного файла.

start copy a.txt h: ^&^& exit 

Чтобы закрыть новую консоль, даже если есть ошибки, вы можете сделать:

start "" "%comspec%" /c copy a.txt h: 
+0

Ничего, я не знал, что вам нужно было сбежать. –

+0

Спасибо, первый случай полезен и полезен! Я тоже не знал побега. –

+0

'start' с параметром'/b' предотвратит создание окна. –

4

Вы можете использовать start для запустите новое cmd-окно и закройте его, как только команда будет запущена следующим образом:

start cmd /c copy a.txt h: 
+0

нет, он не работает и будет выполнять только одну строку. –

+0

Спасибо! он работает на этот раз. –

+0

Удивительный, не беспокойтесь :) –

Смежные вопросы