2017-10-06 23 views
-1

我有一个简单的bash脚本这些mysql程序选项-N -B是什么意思?

#!/bin/sh 
DB_HOST="localhost" 
DB_PASS="pa**w0rd" 
MYSQL="mysql --force --connect-timeout=90 --host=$DB_HOST -u root --password=${DB_PASS}" 

USERS=`$MYSQL -N -B -e "SELECT * FROM users LIMIT 1;" first_db 2> /dev/null` 

INSERT_USER=$($MYSQL -N -B -e "INSERT INTO users (\`username\`, \`password\`) VALUES('Adam', 'pa55word');" first_db 2> /dev/null) 

我知道-e手段执行命令,但我不知道是什么-N -B在这里所做的。任何人都可以告诉我吗?

+3

试试'mysql --help'。 – codeforester

回答

0

从MySQL的手册页引用:

--skip-列名,-N

不要写在成绩列名。


--batch,-B

打印结果使用标签作为列分离器,具有在一个新行的每一行。使用这个选项,mysql不会使用历史文件。

批处理模式导致非表格输出格式和转义特殊字符。通过使用原始模式可能会禁用转义;请参阅--raw选项的说明。

0

Here's解释mysql选项使用的官方网站。它说:

-N选项:

不要在结果写入列名。

-B选项:使用标签作为列分离器,具有在一个新行的每一行

打印结果。使用这个选项,mysql不会使用历史文件。批处理模式导致非表格输出格式和特殊字符的转义。