Come rimuovere o cancellare un singolo cron job usando il comando linux?

27

Ho creato cron job per il mio sito che è elencato di seguito e stanno funzionando bene. Stampo tutto il cron job usando questo script PHP:

$cronfiles=exec('crontab -l',$output);
echo "<pre>";
print_r($output);

Quali output:

  

[0] => 0 0 * * * wget php -q http://www.example.com/report_send.php
[1] => 0 0 * * * wget php -q http://www.example.com/event_reminder.php
[2] => 0 0 * * * wget php -q http://www.example.com/user_reminder.php
[3] => * * * * * wget php -q http://www.example.com/cleardata.php

Ora voglio eliminare o rimuovere un singolo job cron dal mio server tramite comando. Ad esempio voglio rimuovere cron job " 0 0 * * * wget php -q http://www.example.com/event_reminder.php " dal server.

Ho provato il comando crontab -r che rimuove tutto il lavoro cron dal mio server ma voglio rimuovere il lavoro cron specifico.

Puoi aiutarmi per una soluzione?

    
posta anumavu 21.01.2014 - 10:09
fonte

5 risposte

38
  1. Per aggiungere un lavoro a crontab:

    (crontab -u mobman -l ; echo "*/5 * * * * perl /home/mobman/test.pl") | crontab -u mobman -
    
  2. Per rimuovere un lavoro da crontab:

    crontab -u mobman -l | grep -v 'perl /home/mobman/test.pl'  | crontab -u mobman -
    
  3. Rimuovi tutto da crontab:

    crontab -r
    

Niente è complicato: - è STDOUT in Linux!

    
risposta data Greg Hanis 11.01.2016 - 17:45
fonte
16

Da un tipo di prompt di root

crontab -e

Ora puoi modificare il file e rimuovere la linea che vuoi rimuovere. Puoi anche usarlo per modificare crontab per gli utenti se hai il prompt per quell'utente.

A proposito: preferisco aggiungere cronjobs a /etc/crontab . Sembra un po 'più flessibile per me.

    
risposta data Rinzwind 21.01.2014 - 10:34
fonte
7

Visualizza cronologia utenti

Utilizza la seguente sintassi per visualizzare waqleh cronjob dell'utente:

crontab -u waqleh -l

Visualizza cronologia utente root

Basta digitare il seguente comando:

crontab -l

Questo dovrebbe elencare il contenuto dello script crontab.

Visualizza / etc / crontab

Un cronjob può anche essere eseguito da / etc / crontab file. Per visualizzarlo, inserisci:

less /etc/crontab

Rimuovi tutti i cron job

Se e solo se vuoi interrompere tutti i lavori cron, puoi rimuoverli interamente con:

crontab -r

Questo rimuove l'intero file crontab quindi fai attenzione se ci sono altri lavori cron elencati qui!

Rimuovi specifici processi cron

Apri il file cron ed elimina i cron (s) che vuoi rimuovere

crontab -e

ogni riga rappresenta un lavoro cron. Puoi rimuovere qualsiasi cron usando ctrl + k quindi salva e esci

    
risposta data Waqleh 21.03.2016 - 14:45
fonte
0

Puoi eseguire crontab senza argomenti e alimentarlo con il nuovo crontab via stdin.

    
risposta data geirha 21.01.2014 - 10:27
fonte
0
crontab -l | grep -v 'wget php -q http://www.example.com/event_reminder.php' | crontab -

crontab -l elenca i lavori crontab correnti

grep -v filtra una linea

crontab - aggiunge tutte le cose stampate nel file crontab.

    
risposta data Diego D 22.10.2015 - 15:36
fonte

Leggi altre domande sui tag