mysql命令行sql执行神秘,只考虑部分字符串

iyr7buue  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(376)

从mac终端的命令行: mysql --host=127.0.0.1 --port=3306 -uroot -p"mypass" wordpress -e "update users set user_pass = '$1$Hat7oFty$mA.L2vsQdD3MxvxAuDFKp0';" 成功完成。。。
然而。。。。仅限 .L2vsQdD3MxvxAuDFKp0 写入每行的user\u pass字段。威士忌探戈狐步舞?

当我发布 update users set user_pass = '$1$Hat7oFty$mA.L2vsQdD3MxvxAuDFKp0'; 从datagrip这样的应用程序直接到db,它正确地获取整个字符串。。。。

2exbekwf

2exbekwf1#

这个 $ 是shell变量的一部分,无意中被替换。你必须逃离 $ 字符将其作为文本保留在字符串中 $ .

$ echo "$1$Hat7oFty$mA.L2vsQdD3MxvxAuDFKp0"
.L2vsQdD3MxvxAuDFKp0
$ echo "\$1\$Hat7oFty\$mA.L2vsQdD3MxvxAuDFKp0"
$1$Hat7oFty$mA.L2vsQdD3MxvxAuDFKp0

相关问题