Windows 10

Запуск декількох команд в одному рядку в PowerShell та CMD

Запуск декількох команд в одному рядку в PowerShell та CMD

У цій маленькій ноті ми розглядаємо, як виконувати кілька команд CMD або PowerShell в одному рядку. Таке завдання періодично виникає, коли команди PowerShell із зовнішніх програм, із завдань Windows, журнал сценаріїв, коли вам потрібно обійти політику сценаріїв PowerShell, або коли вам потрібно швидко перенести частину коду, щоб виконати проблеми на комп’ютері.

Виконання декількох команд на консолі CMD

У CMD оператор використовується в одному рядку для послідовного запуску команд в одному рядку & . Наприклад:

Чиста зупинка Wuauserv & Net Start Wuauserv & wuauclt /detectnow

При необхідності, що друга команда виконується лише після успішного виконання першого, використовується формат && :

ipconfig /flushdns && ipconfig /reonam

Ви можете використовувати зворотну умову: друга команда буде виконана лише в тому випадку, якщо перша повернула помилку:

Чиста зупинка wuauserv6 || Чистий старт wuauserv

Запуск декількох команд PowerShell в одному рядку

У PowerShell, якщо ви використовуєте знак Ampersand для розділення команд в одному рядку, з’явиться помилка:

Амперсанд (&) персонаж заборонено. & Оператор зарезервований для подальшого використання;

Замість & для розділення команд PowerShell символ точки з комою використовується в одному рядку ( ; ):

Перезапуск -service wuauserv -verbose; Блокнот Get-Process

Ця команда Single Line PowerShell перезапустить службу Windows, а після першої команди відобразить інформацію про процес.

Популярним прикладом зменшення команд у PowerShell є конвеєри (трубопровід), які дозволяють передати результати однієї команди наступного конвеєра. PowerShell як оператор конвеєра використовує символ "|". Наприклад, приклад команди з конвеєром:

Get -Service -Name Wususerv | Зупинка

Той самий код можна записати в декількох рядках:

$ Service = get -service -name wususervice
$ serviceName = $ Service.Назва
Зупинка -Service -Name $ ServiceName

Це виявилося хорошою економією розміру коду, і код став ще простішим і читабельнішим.

Щоб запустити кілька команди PowerShell через меню «Пуск» -> Виконайте, використовуйте формат:

PowerShell -Command & "ipconfig /all; tracert yandex.RU; Пауза "Натисніть будь -яку клавішу для продовження" "

Якщо ви запускаєте ті самі команди через консоль PowerShell, використовуйте синтаксис:

PowerShell -Command ipconfig /all; Tracert Yandex.RU; Пауза "Натисніть будь -яку клавішу для продовження"

Починаючи кілька команд PowerShell через планувальник Windows, ви можете використовувати цей формат:

C: \ Windows \ System32 \ Windowspowershell \ v1.0 \ PowerShell.exe -Command get -eventLog -Logname Security; ipconfig /all; Get-Service serviceName "

У версії PowerShell Core 7.X Доступні нові оператори && та ||. Вони працюють так, як у CMD.

Ви можете перевірити версію PowerShell, завершивши $ PSVersiontable.

Оператор && виконає команди PowerShell праворуч, якщо команда буде успішною зліва:

Напишіть-хост "Привіт!"& Write-Host" світ!Що

Оператор || Він використовується, коли вам потрібно виконати команду, якщо перша команда повернула помилку:

Отримання сервісного імені || Напишіть-господар "відсутня послуга"

Найкращі відеокарти 2021 року
Відеокарта -це особливо важливий компонент комп’ютера для всіх, але, зокрема, для тих, хто хоче грати в сучасні ігри, робити відеофайли або працювати ...
Як дізнатися, що таке жорсткий диск на комп’ютері
Ви можете дізнатися, який жорсткий диск встановлюється на вашому комп’ютері, як за допомогою стандартних засобів операційної системи Windows, так і з ...
Як перетворити Windows з WIM в ОУД і, навпаки, від ОУД до Віма
Як перетворити зображення Windows з Штук у Помітка І, навпаки, від Помітка у Штук? В принципі, не потрібно зайти далеко, щоб здійснити цю операцію, це...