Mysql 格式化在“\n”;作为文本嵌入
我指的是这个 我通过这个命令有一个输出:Mysql 格式化在“\n”;作为文本嵌入,mysql,shell,sed,awk,newline,Mysql,Shell,Sed,Awk,Newline,我指的是这个 我通过这个命令有一个输出: mysql-e“显示引擎innodb状态”-u-p数据库>mydumpfile.txt 但是,我使用的任何编辑器(less、vim、kwrite)都会显示\n,而不是真正的新行 如何使用sed、awk或shell中的任何其他工具完成替换?您可以使用以下sed语法 sed -i -e 's|\\n|\n|g' mydumpfile.txt 如果希望正确地从mysql直接输出,请在mysql命令中使用--table选项 mysql --table -e "
mysql-e“显示引擎innodb状态”-u-p数据库>mydumpfile.txt
但是,我使用的任何编辑器(less、vim、kwrite)都会显示\n
,而不是真正的新行
如何使用sed、awk或shell中的任何其他工具完成替换?您可以使用以下sed语法
sed -i -e 's|\\n|\n|g' mydumpfile.txt
如果希望正确地从mysql直接输出,请在mysql命令中使用--table选项
mysql --table -e "show engine innodb status" -u -p database > mydumpfile.txt
尝试简单地将
\G
添加到SQL命令,例如:
mysql-e“显示引擎innodb状态\G”-u-p数据库>mydumpfile.txt
或者尝试使用-r
(或-raw
)开关运行mysql客户端
mysql-re“显示引擎innodb状态”-u-p数据库>mydumpfile.txt
使用这两种方法中的任何一种,您也可以跳过中间文件,直接导入less
。例如:
mysql-re“显示引擎innodb状态”-u-p数据库|更少
请注意,没有必要指定数据库。我把它包括进来只是为了和你的问题对等。如果您还设置了my.cnf文件,因此不需要输入密码,您可以将其缩短为:
mysql-重新“显示引擎innodb状态”|更少