我目前正在使用MAMP pro,我想创建一个简单的终端脚本(或PC上的.bat文件),它允许我创建一个sql转储(我进入并预先配置数据库名称)和它自动创建.sql
文件。
这是我目前所知道的:
1:脚本应首先访问cd /applications/MAMP/library/bin
2:当它在该目录中时,它应该运行以下
./mysqldump -u root -p databaseName > /Applications/MAMP/htdocs/website/db.sql
最后,在该目录中,当我单击脚本时,它不应该替换旧文件,而是创建一个新文件,可能只需添加日期或后面的整数。
这可能吗?
抱歉,我不知道这样做的最好方法。提前致谢。
答案 0 :(得分:2)
你可以拥有:
#!/bin/sh
TS=$(exec date '+%s')
cd /applications/MAMP/library/bin && \
./mysqldump -u root -p databaseName > "/Applications/MAMP/htdocs/website/db.$TS.sql"
它会以db.(timestamp).sql
。
如果您想要其他表单,只需更改date
命令即可。 '+%s'
指定要生成的格式,即时间戳。您可以使用date --help
或man date
查看其他格式。
答案 1 :(得分:1)
只是另一个答案的变体(投票给它!)。您无需更改目录即可执行mysqldump
:
#!/bin/bash
TS=$(exec date '+%s')
/applications/MAMP/library/bin/mysqldump -u root -p databaseName \
> "/Applications/MAMP/htdocs/website/db.$TS.sql"
请注意,您同时拥有/Application
和/application
个目录。根据您的FS区分大小写,这可能是错误。
答案 2 :(得分:1)
您使用的是OSx吗?
#!/bin/bash
cd /applications/MAMP/library/bin && mysqldump -u root -p databaseName > /Applications/MAMP/htdocs/website/db.sql
在此之后,您需要为脚本设置权限:
chmod +x your_script_file
现在,您可以致电...
./your_script_file
或
sh yout_script_file
如果要替换旧文件,此命令将执行此操作,因为新文件名与旧文件名相同