Використання консольних команд, ярликів та вбудованих команд

Дата оновлення перекладу 2024-04-30

Використання консольних команд, ярликів та вбудованих команд

На додаток до опцій, які ви вказуєте для ваших команд, існують ще вбудовані опції, а також деілька вбудованих команд для компонента Консоль.

Note

Ці приклади припускають, що ви додаил файл application.php для запуску в cli:

1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/env php
<?php
// application.php

require __DIR__.'/vendor/autoload.php';

use Symfony\Component\Console\Application;

$application = new Application();
// ...
$application->run();

Вбудовані команди

Існує вбудована команда list, яка виводить всі стандартні опції та зареєстровані команди:

1
$ php application.php list

Ви також можете отриматий таке ж виведення, не запускаючи ніяких команд:

1
$ php application.php

Команда допомоги переліковує інформацію допомоги для вказаної команди. Наприклад, щоб отримати допомогу за командою list:

1
$ php application.php help list

Запуск help без вказання команди перелікує глобальні опції:

1
$ php application.php help

Глобальні опції

Ви можете отримати інформацію допомоги для будь-якої команди за допомогою опції --help. Щоб отримати допомогу за командою list:

1
2
$ php application.php list --help
$ php application.php list -h

Ви можете придушити виведення за допомогою:

1
2
$ php application.php list --quiet
$ php application.php list -q

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

1
2
$ php application.php list --verbose
$ php application.php list -v

Щоб вивести ще більш деталізовані повідомлення, ви можете використати ці опції:

1
2
$ php application.php list -vv
$ php application.php list -vvv

Якщо ви встановите необовʼязкові аргументи, щоб дати вашому додатку імʼя та версію:

1
$application = new Application('Acme Console Application', '1.2');

То ви можете використати:

1
2
$ php application.php list --version
$ php application.php list -V

Щоб отримати таке виведення інформації:

1
Додаток Acme Console версія 1.2

Якщо ви не надасте імені консолі, то буде виведено просто:

1
інструмент консолі

Ви можете форсувати включення виділення кольором виведення ANSI за допомогою:

1
$ php application.php list --ansi

Або вимкнути його за допомогою:

1
$ php application.php list --no-ansi

Ви можете придушити будь-які інтерактивні запитання команди, яку ви запускаєте, за допомогою:

1
2
$ php application.php list --no-interaction
$ php application.php list -n

Синтаксис ярликів

Вам не потрібно друкувати повні назви команд. Ви можете просто надрукувати найкоротше однозначне імʼя, щоб запустити команди. Тому, якщо команд, що співпадають, немає, то ви можете запустити help таким чином:

1
$ php application.php h

Якщо у вас є команди, що використовують : у просторі імен, то вам просто потрібно надрукувати найкоротший однозначний текст для кожної частини. Якщо ви створили demo:greet так, як продемонстровано в Компонент Console, то ви можете запустити його за допомогою:

1
2
3
4
5
6
$ php application.php d:g Fabien

# ви також можете змішувати верхній та нижній регістр при дотриманні однозначності
# php application.php Demo:g Fabien
# php application.php de:Gr Fabien
# php application.php DE:Gre Fabien

Якщо ви введете коротку неоднозначну команду (тобто, існує більше однієї команди, що співпадає), то не буде запущено жодну команду, і будуть виведені декілька варіантів можливих команд на вибір.