我现在想提一下,我对 RegEx 或 BASH 都不太流利,因此非常感谢深入的解释,这样我可以学习。谢谢。
我已经大大简化了这个文件,但基本上我想要做的是获取一个数组$sqldatabases
并检查哪些变量包含 @ 符号,然后更新该特定变量以不包含 @ 符号,最后mysqldump
为该数据库运行. 基本上,我目前看到的代码中缺少if
语句过滤论坛@。
source config.sh
sqldatabases=(bans forum@ users donators)
for (( sqlcount = 0; sqlcount < ${#sqldatabases[@]}; sqlcount++ ))
do
if [[ "$sqldatabases[sqlcount]" =~ *[@]* ]] ; then
sqldatabases[sqlcount]=${sqldatabases[sqlcount]//[@]/}
echo "$sqldatabases[sqlcount]"
mysqldump -u"$sqluser" -p"$sqlpass" -h"$sqlhost" ${sqldatabases[sqlcount]} > .backups/$timedate/MySQL/${sqldatabases[sqlcount]}.sql;
fi
done
再次感谢您的帮助,并尝试深入解释每个修改。