Linux komutunu kullanarak tek cron işi nasıl kaldırılır veya silinir?

27

Aşağıda listelenen sitem için cron işleri oluşturdum ve iyi çalışıyorlar. Bu PHP betiğini kullanarak tüm cron işlerini yazdırıyorum:

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

Hangi çıktılar:

  

[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

Artık tek bir cron işini sunucumdan komutla silmek veya kaldırmak istiyorum. Örneğin, sunucudan " 0 0 * * * wget php -q http://www.example.com/event_reminder.php " adlı cron işini kaldırmak istiyorum.

Tüm cron işini sunucumdan kaldıran crontab -r komutunu denedim ancak belirli bir cron işini kaldırmak istiyorum.

Lütfen bana çözüm için yardım edebilir misiniz?

    
sordu anumavu 21.01.2014 10:09

5 cevap

38
  1. crontab'a bir iş eklemek için:

    (crontab -u mobman -l ; echo "*/5 * * * * perl /home/mobman/test.pl") | crontab -u mobman -
    
  2. Bir işi crontab'tan kaldırmak için:

    crontab -u mobman -l | grep -v 'perl /home/mobman/test.pl'  | crontab -u mobman -
    
  3. Her şeyi crontab'tan kaldırın:

    crontab -r
    

Hiçbir şey zor değil: Linux'ta - STDOUT!

    
verilen cevap Greg Hanis 11.01.2016 17:45
16

Kök istemi türünden

crontab -e

Şimdi dosyayı düzenleyebilir ve kaldırmak istediğiniz satırı kaldırabilirsiniz. Bunu, söz konusu kullanıcıya yönelik bir isteminiz varsa, kullanıcılar için crontab'ı düzenlemek için de kullanabilirsiniz.

Bu arada: /etc/crontab 'ye cronjobs eklemeyi tercih ediyorum. Bana biraz daha esnek görünüyor.

    
verilen cevap Rinzwind 21.01.2014 10:34
7

Kullanıcıları Görüntüle Cronjob

waqleh kullanıcının cronjob'unu görüntülemek için aşağıdaki sözdizimini kullanın:

crontab -u waqleh -l

Kök Kullanıcı Cronjob'yu Görüntüleme

Sadece şu komutu yazın:

crontab -l

Bu, crontab komut dosyasının içeriğini listelemelidir.

Görünümü / etc / crontab

Bir cronjob ayrıca / etc / crontab dosyasından da çalıştırılabilir. Görmek için şunu girin:

less /etc/crontab

Tüm cron işlerini kaldırın

Yalnızca ve yalnızca ise, tüm cron işlerini durdurmak isterseniz, aşağıdakileri tamamen kaldırabilirsiniz:

crontab -r

Bu tüm crontab dosyasını temizler bu yüzden orada listelenen diğer cron işleri varsa dikkatli olun!

Belirli cron işlerini kaldırın

Cron dosyasını açın ve kaldırmak istediğiniz cron'ları silin

crontab -e

her satır bir cron işini temsil eder. Herhangi bir cronu ctrl + k kullanarak kaldırabilir, sonra kaydedip çıkabilirsiniz

    
verilen cevap Waqleh 21.03.2016 14:45
0

crontab dosyasını argüman olmadan çalıştırabilir ve yeni crontab'i stdin ile besleyebilirsiniz.

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

crontab -l geçerli crontab işlerini listeler

grep -v bir satır filtre

crontab - , yazdırılan tüm öğeleri crontab dosyasına ekler.

    
verilen cevap Diego D 22.10.2015 15:36

Etiketlerdeki diğer soruları oku