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?

Xsi
sumber
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

Bonsi Scott
sumber
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.

Chris Down
sumber
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.

delh
sumber
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.

Molimo
sumber
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