【问题标题】:Cronjob - How to output stdout, and ignore stderrCronjob - 如何输出标准输出,并忽略标准错误
【发布时间】:2016-06-02 01:32:47
【问题描述】:

是否可以将stdout 输出到文件,但忽略stderr

我有一个 Python 脚本,它使用 sys.stderr.write(error) 将错误输出到 stderr。对于这个特定的脚本,我想忽略这些。这怎么可能?

这是 crontab 中的当前条目:

* * * * * /Users/me/bin/scrape-headlines /Users/me/proxies.txt >> /Users/me/headlines.txt 2>&1

scrape-headlines 是一个调用 Python 脚本的 bash 脚本。

【问题讨论】:

    标签: python bash stdout crontab stderr


    【解决方案1】:

    2>&1stderr 重定向到stdout,并将其附加到headlines.txt。 所以,将stderr 重定向到/dev/null

    * * * * * /Users/me/bin/scrape-headlines /Users/me/proxies.txt >> /Users/me/headlines.txt 2> /dev/null
    

    【讨论】:

      【解决方案2】:

      您可以使用“2”描述符单独控制stderr,例如,将其重定向到/dev/null

      * * * * * /Users/me/bin/scrape-headlines /Users/me/proxies.txt >> /Users/me/headlines.txt 2>/dev/null
      

      【讨论】:

        【解决方案3】:

        您可以分别重定向stderr和stdout。

        $ command 1> /some/file 2> /some/other/file
        

        如果您想删除标准错误,请将其发送至/dev/null

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-12-11
          • 1970-01-01
          • 2018-08-29
          相关资源
          最近更新 更多