我有一个包含很多sql脚本的文件夹。我想运行所有这些而不指定它们的名称。只需指定文件夹名称即可。有可能吗?
答案 0 :(得分:10)
你不能原生,但这里是简单的bash命令:
for sql_file in `ls /path/to/directory`; do mysql -uUSER -pPASSWORD DATABASE < $sql_file ; done
此处USER
,PASSWORD
和DATABASE
是相应的凭据,/path/to/directory
是包含您的文件的文件夹的完整路径。
如果您只想过滤sql
个文件,那么:
for sql_file in `ls /path/to/directory/*.sql`; do mysql -uUSER -pPASSWORD DATABASE < $sql_file ; done
答案 1 :(得分:2)
这对我有用: 1.在我的脚本文件夹中创建了一个shell脚本
for f in *.sql
do
echo "Processing $f file..."
mysql -u user "-pPASSWORD" -h HOST DATABASE < $f
done