當執行這樣的 cron 作業時:
捲曲http://example.com/cronjob.php
發送到郵件的輸出包含以下內容:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 52 0 52 0 0 81 0 --:--:-- --:--:-- --:--:-- 81
0 52 0 52 0 0 31 0 --:--:-- 0:00:01 --:--:-- 0
0 98 0 98 0 0 37 0 --:--:-- 0:00:02 --:--:-- 23
0 98 0 98 0 0 27 0 --:--:-- 0:00:03 --:--:-- 15
0 98 0 98 0 0 21 0 --:--:-- 0:00:04 --:--:-- 11
100 144 0 144 0 0 25 0 --:--:-- 0:00:05 --:--:-- 18
100 144 0 144 0 0 21 0 --:--:-- 0:00:06 --:--:-- 18
100 190 0 190 0 0 23 0 --:--:-- 0:00:07 --:--:-- 17
100 190 0 190 0 0 21 0 --:--:-- 0:00:08 --:--:-- 17
100 236 0 236 0 0 24 0 --:--:-- 0:00:09 --:--:-- 27
我發現這完全沒用,更喜歡只輸出程式碼。有什麼辦法可以禁用這個嗎?
如果 cronjob 像下面這樣運行,我不會得到這個:
php /path/to/the/phpfile.php
但現在,我別無選擇,只能使用curl。
答案1
搜尋範圍man curl
:...
-s/--silent
Silent mode. Don’t show progress meter or error messages.
Makes Curl mute.
這樣就curl -s http://example.com/cronjob.php
可以解決問題了。
您可能還想使用以下選項:
-S/--show-error
When used with -s it makes curl show error message if it fails.
希望能幫助你。
答案2
你有沒有嘗試過:
curl --silent http://example.com/cronjob.php >>/path/to/output.log 2>&1
??