首页 > 代码库 > shell将变量通配符解释执行

shell将变量通配符解释执行

最近在shell中想调用MySQL的语句查询结果,却出现了一个令人诧异的结果

这是MySQL中的表数据

在这个表中存了一条sql语句,想在shell中分离出这条语句进行执行

执行结果不是想象中的和sql查询的结果一致

却出现了这个奇怪的结果

仔细分析图中的结果,联想表中所存的sql语句为select * from testSQL;

似乎“*”不见了,然后看其他的东西,发现和当前目录下的文件列表一致

才想起是不是查询的结果中的“*”被当成了通配符进行了解释呢?

于是改了一下shell脚本,在输出时加上双引号禁止解释通配符

注意标注处的双引号

再次执行脚本

便得到了想要的效果。

 

由于刚开始接触shell,所以才会遇到这种问题。大神门可以省略。。。

 

shell将变量通配符解释执行