【问题标题】:How do I save the output of the bat file to a specific location如何将 bat 文件的输出保存到特定位置
【发布时间】:2011-09-13 18:20:15
【问题描述】:

我正在运行这个命令

C:\php\php.exe -f C:\leads\ftp.php

使用带有 Windows 计划任务的 bat 文件,一切正常。 php 文件进入 ftp 并抓取一个文件存储在本地。问题是文件在本地存储的位置不在C:\leads\ 目录中。它正在保存在C:\Windows\sysWOW64\

如果我单击 bat 文件,它将按预期将文件存储在 C:\leads\ 目录中

关于如何解决这个问题的任何想法

【问题讨论】:

    标签: windows shell command-line batch-file scheduled-tasks


    【解决方案1】:

    添加:

    cd /d C:\leads\
    

    在您的 php.exe 命令之前。发生这种情况是因为无论您的批处理文件是从计划任务运行还是从您双击它运行,工作目录的设置都不同。这样你就可以强制 PHP 工作目录是你想要的。

    【讨论】:

    • 这告诉cd 您将更改当前驱动器以及当前目录。在命令提示符下键入 cd /?help cd 以获取更多信息。可能没有必要,因为您的文件在 C: 驱动器上,但它不会受到伤害。
    • 我试过 cd /d C:\leads\ C:\php\php.exe -f C:\leads\ftp.php 得到一个关于路径和目录的错误
    • @Tamer:那应该在单独的行上,在包含php.exe 的行之前。或者,您可以将其放在同一行,但在php.exe 之前直接添加&,如下所示:cd /d C:\leads\ & C:\php\php.exe -f C:\leads\ftp.php
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多