Якщо ви хочете виконати кілька команд з 1 рядка, де ви запускаєте команди start
, наприклад, якщо ви хотіли виконати команду так:
start "" netsh dump && pause
Потім це потрібно зробити в 2 етапи (однорядкове рішення знаходиться в кінці цієї відповіді).
Спочатку запишіть команди у тимчасовий пакетний файл (у цьому випадку ви можете використовувати &
або &&
):
echo netsh dump ^&^& pause ^&^& exit>foobar.cmd
-or-
echo netsh dump ^& pause ^& exit>foobar.cmd
Зауважте, що вам потрібно "уникнути" кожного з "&"s
(амперсандів) з "^"
символом a, щоб вони могли розглядатися як звичайні символи echo
команди. Крім того, ви можете створити тимчасовий пакетний файл за допомогою текстового редактора, наприклад блокнота.
Потім використовуйте start
для запуску пакетного файлу:
start "" foobar.cmd
-or-
start "" "temporary foobar.cmd"
Примітка . Порожня пара подвійних лапок - це "Title"
те, що буде показано у рядку заголовка вікна команди, яке start
відкриється. Цей "Title"
аргумент технічно є необов'язковим аргументом start
, але він фактично необхідний , якщо команда, яка start
буде виконуватися, двічі цитується. Наприклад, у другому прикладі:
start "" "temporary foobar.cmd"
якщо ви залишите порожню пару подвійних лапок таким чином:
start "temporary foobar.cmd"
Потім start
відкриється нове вікно командного рядка, а також використовувати в "temporary foobar.cmd"
якості нового вікна командного рядка "Title"
, і нічого не буде виконано в новому вікні командного рядка.)
Якщо ви хочете start
дочекатися завершення пакетного файлу (після pause
відхилення) перед його start
завершенням, вам потрібно додати /w
перемикач до start
команди:
start "" /w foobar.cmd
Ви можете зібрати це все в один рядок і навіть видалити (видалити) тимчасовий пакетний файл ( foobar.cmd
):
echo netsh dump ^&^& pause ^&^& exit>foobar.cmd && start "" /w foobar.cmd && del foobar.cmd
-or-
echo netsh dump ^& pause ^& exit>foobar.cmd & start "" /w foobar.cmd & del foobar.cmd
Зауважте, що якщо ви збираєтеся видалити тимчасовий пакетний файл, вам потрібно запустити start
з /w
комутатором, інакше тимчасовий пакетний файл, ймовірно, буде видалений, перш ніж він матиме можливість запуститись.
&
і&&
працювати тільки в Windows 'cmd.exe
- що не DOS.