命令行上的箭头(“->”)符号表示什么意思?

命令行上的箭头(“->”)符号表示什么意思?

我正在使用终端 (Mac OS X),但我认为这是 Linux 的内置部分。有时,当我执行命令时,终端会返回一个新的缩进行,->行上只有。它似乎在等待某事,但我不知道它是否需要我采取行动。按回车键只会返回另一行相同的行。当我 时Ctrl + C,它会显示Aborted,这意味着某事显然正在处理。这是什么意思?例如,以下内容:

$ mysql -u root -h host -p
Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is X
Server version: 5.1.39-log MySQL Server

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> mysqldump my_database
    -> 
    -> [Ctrl + C]
    -> Aborted
$

编辑:看来这是命令的错误语法,但我不确定这是否是箭头的原因。

答案1

在 MySQL 命令行工具中,这意味着该工具希望您的输入在下一行继续。这里它正在等待目标路径。

常见的“完整”SQL 命令都是用缩进编写的,命令行支持缩进。你可以这样写

SELECT
    `users`.*
FROM
    `users`
WHERE
    `users`.`is_active` = 1 AND
    `users`.`age` < 13
ORDER BY
    `users`.`username`

答案2

箭头是交互式继续提示。如果您输入了未完成的命令,SQL shell(由 mysql 命令调用)将等待其余部分。

在这种特殊情况下,SQL shell 正在等待 mysqldump 的目标路径。

此外,除非您用分号终止命令,否则命令是不完整的。(感谢@MrStatic)

答案3

您确实有语法错误;SQL 命令必须以分号结尾。例如:

mysqldump my_database;

答案4

如果你使用玛拉雅数据库mysqldump不是mysql命令。在bash中运行它。

$ mysqldump -u root -h host -p ### my_database > dump.sql

为了更准确的用法,运行mysqldump --help

相关内容