Для работы команды терминала ее следует повторить дважды.

Для работы команды терминала ее следует повторить дважды.

Я совсем новичок в Linux и Ubuntu. Вчера установил его в VMWare Player и посмотрел несколько хороших руководств по командам.

Я установил MySQL, PHP и кое-что еще.

Я создал базу данных и таблицу и пытался немного поиграться с командой и т. д. Теперь я заметил, что мне нужно ввести команду дважды, чтобы она заработала, в первый раз, когда я ее использую, она вызывает ошибку. (Это только в области mysql)

Проверь это:

Сначала я попробовал:

mysql> \G use my_database
ERROR: 
No query specified

Затем я попробовал еще раз:

-> \G use my_database
Query OK, 0 rows affected (0.00 sec)

Почему так происходит? Это баг? Или есть какие-то причины такого поведения?

решение1

В чем причина использования \Gперед вашей командой/запросом?!? При таком использовании вполне нормально получить эту ошибку: No query specified, поскольку вы не указали какой-либо запрос перед использованием \G:

mysql> help
...
ego       (\G) Send command to mysql server, display result vertically.
...

Правильный способ перехода my_databaseиз режима command-lie:

mysql> use my_database;

или (см. helpеще раз):

mysql> \u my_database

Кроме того, при переключении на другую базу данных я не вижу смысла использовать \G, так как вывод будет тем же. Но если вам это действительно нужно, вы можете использовать его после ввода команды/запроса, например так:

mysql> use my_database \G

Связанный контент