Как запустить несколько команд одновременно в командной строке?

при использовании Unix я могу запускать несколько команд в командной строке подряд:

# command1; command2; command3

или даже цепь их, проверяя статусы выхода:

# command1 && command2 && command3

возможно ли то же самое в командной строке Windows XP?

мне часто приходится запускать несколько команд сборки программного обеспечения в Windows...

8
задан Tom Wijsman
21.05.2023 19:32 Количество просмотров материала 3689
Распечатать страницу

3 ответа

у вас есть несколько вариантов в командной строке.

как упоминал @barlop, используется && для цепочки команд до тех пор, пока предыдущий был успешным.

там же ||, которая прекратит выполнение после первой успешной команды.

наконец, команды можно группировать в скобки () следующим образом:

C:\>(
echo command 1
echo command 2
)

"группировка" может также использоваться с другими командами, такими как if или for, что позволяет вещи like:

C:\>for %i in (*.7z) do @(
md "%~ni"
cd "%~ni"
7za.exe x "%~fi"
cd ..
del "%i"
)
4
отвечен afrazier 2023-05-23 03:20

на cmd.exe можно использовать & для цепочки команд (например,; in sh).

echo a & echo b

на && и || операторы тоже работают.

2
отвечен grawity 2023-05-23 05:37

ntcmds.кхм упоминает

под понятиями.."обзор оболочки cmd"

&& запускает команду,&&, только если команда, стоящая перед символом успешного

Так можно делать

C:\>echo a && echo a

добавил

& больше подходит в качестве ответа, чем &&

здесь из ntcmds.механизма посредничества

& "используется для разделения нескольких команд в одной командной строке. УМК.exe выполняет первую команду, а затем вторую команда."

&& "используется для выполнения команды&&, только если команда, стоящая перед символом успеха. УМК.exe выполняет первую команду, а затем выполняет вторую команду только в том случае, если первая команда выполнена успешно. " (это логическое короткое замыкание и)

|| "использовать для запуска команд||, только если команда, стоящая перед символом || не была выполнена. УМК.exe выполняет первую команду, а затем выполняет вторую команду, только если первая команда не была успешно завершена (полученный код ошибки превышает ноль)." (это логическое короткое замыкание или т. е., учитывая выражение "A или B", где A и B являются булевыми значениями TRUE или FALSE, ему нужно только одно значение true, поэтому, если a истинно, он не зайдет так далеко, как B, потому что ему не нужно, чтобы сделать его оценку)

1
отвечен barlop 2023-05-23 07:54

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх