有没有办法将 curl 输出到文件中?

有没有办法将 curl 输出到文件中?

以下是 Linux 上的脚本:

if [ -s $WORK_DIR/newerfile ]
then
    curl -k -T $WORK_DIR/newerfile -u username:password ftpssl.example.bank/inbound
fi

我想将 curl 命令的结果放入可以保存的文件中。我们正在将文件发送到银行,并希望确保文件到达那里。我在 Linux 提示符下只使用了此命令,它“似乎”可以工作(没有错误),但我没有看到任何输出。我阅读了 curl 常见问题解答,并且了解进度表 - 它确实表明您可以使用 shell > 访问文件,但由于我没有看到任何输出,所以我不知道。而且我对 curl 确实知之甚少。

答案1

来自curl 手册页

-o, --output <file>
              Write output to <file> instead of stdout. If you are using {} or [] to fetch multiple documents, you can use '#'
              followed by a number in the <file> specifier. That variable will be replaced with the current string for the URL
              being fetched. Like in:

                curl http://{one,two}.site.com -o "file_#1.txt"

              or use several variables like:

                curl http://{site,host}.host[1-5].com -o "#1_#2"

              You may use this option as many times as the number of URLs you have.

              See also the --create-dirs option to create the local directories dynamically. Specifying the output as  '-'  (a
              single dash) will force the output to be done to stdout.

如果您只是想检查命令是否成功,只需检查 curl 的退出代码。如果成功,则为 0,否则为其他值。

相关内容