bagaimana cara menjalankan cron pada OSX 10.6.2?

10

Catatan: pertanyaan ini bukan tentang cara mengedit tab cron tetapi bagaimana membuat cron berfungsi


  1. Saya mengedit cron saya menggunakan env EDITOR=joe crontab -e
  2. Saya masuk 1 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txtdan tidak melakukan apa-apa meskipun cron sudah diatur dengan benar . Diperiksa melalui Cronnix dan melihat cron di / var / cron / tab. Mengedit crontab menggunakan Cronnix memberi saya hasil yang sama.

Jika saya menjalankan echo 'test' > /Users/radek/Backup/rationalvmware/test.txtsecara manual itu membuat file seperti yang diharapkan jadi saya menganggap bahwa perintah yang saya berikan kepada cron adalah yang benar.

Apakah ada hal khusus yang harus saya lakukan untuk membuat cron berfungsi pada OSX? Bagaimana saya memeriksanya, cron sedang berjalan.

Apa yang setara dengan / var / log / pesan di OSX? Saya bisa melihat di pesan di SuSE bahwa cron berfungsi.

Radek
sumber
1
Sebagai tambahan: catatan yang cronberjalan di lingkungan yang berbeda dari perintah uji Anda sendiri. Misalnya: Anda mungkin sering membutuhkan jalur absolut.
Arjan

Jawaban:

8

Saya ragu Anda menunggu hingga 1 menit melewati jam untuk ujian Anda. Untuk menjalankan setiap menit:

0-59 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt
Arjan
sumber
Dari Mavericks atau lebih baru, sebuah alternatif mengirimkan pemberitahuan kepada diri Anda sendiri0-59 * * * * osascript -e "display notification \"$(date)\" with title \"Cron test\""
wardw
10

Utilitas cron diluncurkan oleh launchd ketika melihat keberadaan /etc/crontabatau file di /usr/lib/cron/tabs. Seharusnya tidak perlu memulainya secara manual . (Lihat halaman manual .)

Untuk melihat log OS X, Anda dapat menggunakan Console Utility.

Hieu
sumber
Di Mt. Singa lokasi itu sebenarnya disambungkan beberapa kali, akhirnya mengarah ke:, /private/var/at/tabs/FYI
Andrew Burns
9

Dua cara lain adalah menggunakan:

*/1 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt

atau

* * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt

Keduanya berjalan setiap menit.

ferrouswheel
sumber
3

Pertama, Anda perlu mengatur $EDITORvariabel Anda ke sesuatu yang masuk akal, karena apa yang Anda tetapkan itu menjadi sesuatu yang tidak Anda inginkan. Atur seperti ini:

EDITOR=joe

Anda dapat mengubah joeke editor teks lain, seperti nanoatau vim.

Kemudian, Anda ingin mengedit crontab, yang dilakukan seperti:

crontab -e

Kemudian Anda akan memasukkan teks untuk crondigunakan.

Wuffers
sumber
Saya memperbarui pertanyaan saya. Saya dapat mengedit cron seperti yang saya lakukan tetapi cron tidak berjalan ....
Radek
Tidak ada alasan joetidak bisa digunakan. Kuncinya adalah yang crontab -edigunakan.
Dijeda sampai pemberitahuan lebih lanjut.
joe adalah yang terbaik
nkadwa
3

Jika Anda ingin menggunakan cron di Mountain Lion, Anda harus melihatnya di sini: https://coderwall.com/p/ry9jwg atau cukup buka terminal dan jalankan sudo touch /etc/crontab. Setelah itu pekerjaan Anda di / usr / lib / cron / tab harus ditangani oleh cron.

CKIDOW
sumber