crontab -e, lalu 0 * * * * = setiap jam ... Di mana disimpan


14

Setelah sudo crontab -e (itu menulis "/tmp/crontab.XXXX70pN9h" 1L, 19C 1,1 Semua

Lalu saya menyimpan file. Dan untuk memeriksa ..? (bagaimana? saya tidak tahu)

And to check I 
ps -e | grep cron
29818 ?        00:00:00 cron

Jadi .. tapi saya memutuskan untuk memeriksanya lagi

sudo cat /etc/cron.hourly
cat: /etc/cron.hourly: Is a directory
xi@localhost ~ $ sudo ls /etc/cron.hourly

Tidak ada! yaitu dalam direktori

Seperti yang saya mengerti 0 pertama dalam posisi jam berarti setiap jam?


Ok, saya akan menunggu satu jam (celah paling sedikit dalam dokumentasi)
Xsi

Anda pasti ingin memeriksa pertanyaan saya. Ini memiliki jawaban oleh Stephane Chazelas yang menjelaskan bagaimana Anda dapat membuat shell interaktif yang identik dengan lingkungan yang akan dilihat oleh tugas cron Anda. Jika Anda berjalan melalui prosedur kecilnya, Anda mendapatkan prompt dan Anda dapat menguji cronjob langkah demi langkah dan melihat di mana itu gagal. unix.stackexchange.com/a/56503/16841 Tentu itu bukan 100% cocok untuk pertanyaan Anda, tetapi dapat membantu Anda memecahkan masalah crontab.
jippie

Jawaban:


24

Bidang dalam cron adalah:

m      h       dom             mon     dow          command
Minute Hour    Day of Month    Month   Day of week  <command>

Dan Anda 0 * * * * <command>kemudian menerjemahkan ke "Jalankan perintah pada setiap jam, setiap hari, setiap bulan, dan setiap hari kerja, jika menitnya adalah 0"

Anda dapat membuat daftar crontab Anda dengan menggunakan crontab -l, seperti yang sudah disebutkan.

Ambil Tautan ini di sini, ada beberapa Contoh Cron Praktis


tanggal [-u | --utc | --universal] [MMDDhhmm [[CC] YY] [. ss]] itu seperti, Tapi visa versa
Xsi

Apa hubungannya ini dengan cron?
Bonsi Scott

9

Entitas Anda crontabdan cron.hourlyterpisah. Memasukkan sesuatu ke dalam Anda crontabtidak memasukkannya cron.hourly, bahkan jika itu berjalan setiap jam. Memasukkan skrip cron.hourlyhanyalah cara lain agar skrip dijalankan setiap jam, yaitu, crondasmon Anda memeriksa Anda crontab dan cron.hourly . Memiliki keduanya akan menjalankannya dua kali.


9 Nov Fri 15:16:01 EET 2012 xi @ localhost ~ $ ls /var/log/cron.log ls: tidak dapat mengakses /var/log/cron.log: Tidak ada file atau direktori seperti itu
Xsi

3

Anda dapat memeriksa apakah crontab diinstal menggunakan:

sudo crontab -l

Setiap jam pesan log akan muncul /var/log/syslogkarena dieksekusi.

Bacaan lebih lanjut:

http://www.linuxweblog.com/crotab-tutorial

Saya pikir nol pertama (0) adalah menit. Tetapi jika Anda mengatakan Anda ingin sesuatu dilakukan ketika menit adalah 0, itu akan dilakukan setiap jam. Karena hanya sekali dalam satu jam, risalahnya nol.



1

Jika Anda benar-benar mencari file cron pengguna untuk melihat kapan itu diubah atau sesuatu yang sifatnya dapat ditemukan di /var/spool/cron/tetapi Anda mungkin tidak boleh memanipulasi file secara manual.


Tidak begitu banyak mungkin tidak seharusnya seperti tidak seharusnya . The crondaemon tidak akan melihat perubahan jika Anda mengedit file secara langsung. Sebagai gantinya, gunakan crontab -luntuk membuat daftar untuk pengguna saat ini, crontab -euntuk mengedit untuk pengguna saat ini, dan / atau memasukkan -u {user}juga untuk mengakses pengguna yang berbeda crontab. Ini semua didefinisikan dengan baik di halaman manual untukcrontab .
roaima

Saya percaya ada cara untuk mengatur cronagar secara otomatis memeriksa file untuk perubahan jika Anda benar - benar perlu memperbaruinya secara manual.
Molimo

Jika Anda perlu memperbaruinya secara manual maka gunakan crontabantarmuka; untuk itulah ia ada. Kalau tidak, Anda harus berhenti dan memulai ulang crondaemon.
roaima
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.