【问题标题】:Run .sh file from cygwin on windows 7在 Windows 7 上从 cygwin 运行 .sh 文件
【发布时间】:2013-05-13 11:14:10
【问题描述】:

我正在尝试在 Windows 7 上从 cygwin 运行 .sh 文件

我的 dumdb.sh 文件内容

#!/bin/bash
for database in $(mysql -e "show databases"|awk -F " " '{print $1}') do
    mysqldump -u root -h localhost -p $database > $database.sql
done

在运行此命令时

$ sh dumpdb.sh

我收到以下错误

bash: line 3: syntax error near unexpected token `mysqldump'
bash: line 3: `mysqldump $database > $database.sql'

我哪里做错了?

【问题讨论】:

    标签: windows bash shell cygwin


    【解决方案1】:

    您在do 之前缺少;

    #!/bin/bash
    for database in $(mysql -e "show databases"|awk -F " " '{print $1}') ; do
        mysqldump $database > $database.sql
    done
    

    【讨论】:

    • 谢谢,但现在我收到此错误dumpdb.sh: line 4: mysql: command not found
    • 听起来你没有安装mysql,或者至少在你的PATH中找不到。
    • 是的thanx,我添加了mysql路径并且错误消失了,但是shell脚本没有按预期工作。这是对的吗? (将所有数据库转储到单独的文件中)。从here得到它。
    • 您可能应该首先使用单个数据库单独测试mysqldump,看看它是否在执行您想要的操作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-09
    • 1970-01-01
    • 1970-01-01
    • 2021-07-17
    • 2016-06-16
    • 2018-10-12
    相关资源
    最近更新 更多