2010-06-05 21 views
33

Io corro due cron jobs:Come passare più parametri a cron lavoro con l'arricciatura?

Questo esegue senza un problema:

curl -sS http://example.com/cronjob.php?days=1 

Ma questo non funziona affatto:

curl -sS http://example.com/cronjob.php?days=1&month=1 

È questo a causa della la e commerciale (&)? Se sì, come passare più parametri?

Utilizzando argv non è un'opzione.

risposta

70

Noterete che questo non funziona esattamente nella shell, sia.

Quello che dovete fare è mettere virgolette singole intorno l'URL, in questo modo:

curl -sS 'http://example.com/cronjob.php?days=1&month=1' 
+7

utente di Windows esecuzione di binari ricciolo dovrebbe utilizzare le virgolette doppie invece di singolo virgolette per ottenere il comando di più parametri di query funzionanti. –

0

Prova una richiesta POST

curl -d "days=1&month=1" www.example.com/cronjob.php 
+0

motivo particolare suggerisci un POST? – SamB

+1

Nessun danno a citarlo, è bene sapere (Anche se io andrò con GET) – Yeti

+1

bene solo su voi si potrebbe anche farlo con una richiesta GET. Questo è proprio come lo farei. Tuttavia questo avrebbe funzionato, e questo è il punto :-) – streetparade