我正在运行两个cron工作:
这个执行没有问题:
curl -sS http://example.com/cronjob.php?days=1
Run Code Online (Sandbox Code Playgroud)
但这根本不会发生:
curl -sS http://example.com/cronjob.php?days=1&month=1
Run Code Online (Sandbox Code Playgroud)
这是因为&符号(&)吗?如果是,如何传递多个参数?
使用argv不是一种选择.
Sam*_*amB 97
您会注意到,这在您的shell中也不起作用.
您需要做的是在URL周围加上单引号,如下所示:
curl -sS 'http://example.com/cronjob.php?days=1&month=1'
Run Code Online (Sandbox Code Playgroud)
尝试 POST 请求
curl -d "days=1&month=1" www.example.com/cronjob.php
Run Code Online (Sandbox Code Playgroud)
作为一种替代方法,可以在&之前使用\,这是shell的特殊字符。通常,&是对shell有意义的特殊字符之一。
因此,使用反斜杠(在“报价解决方案”旁边)可以很好地解决此问题。更多
在您的示例中,您可以简单地应用以下命令:
curl -sS http://example.com/cronjob.php?days=1\&month=1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
47043 次 |
| 最近记录: |