我有一个脚本,我想在 mysql 数据库中自动登录。
问题是当密码包含特殊字符时,这里是一个例子:
密码文件包含:
password=$AES-256$VlQ==$+rZfd6ntjZdyD0=
这是脚本:
pass=$(cat password_file | grep password | cut -d"=" -f2)
mysql -uroot -p$pass
这怎么可能做到呢?或许正试图逃避
我知道即使剪切部分也只是将密码切成两半。
答案1
你可以用 GNU 尝试一下grep
:
grep -Po "(?<=^password=).*" file
和sed
grep "^password" file | sed 's/[^=]*=//'
和awk
:
awk -F'password=' '{ print $2 }'
答案2
不要 grep,只需获取文件:
. /path/to/password.txt
您现在已将密码保存为$password
,因此您可以执行以下操作:
mysql -uroot -p"$password"