2011-09-06 13 views

Odpowiedz

39

wykonana komenda dla "Codziennie o 12:20 rano" jest

20 0 * * * 

Cała linia w crontab będzie wówczas

20 0 * * * /usr/bin/ruby /Users/tamer/scripts/sftp.rb 
11

Wpis crontab powinna wyglądać następująco:

20 0 * * * /usr/bin/ruby /Users/tamer/scripts/sftp.rb 

Zakłada się, że nie potrzebujesz żadnych innych zmiennych środowiskowych, aby wszystko działało. Jeśli potrzebujesz innych zmiennych, utwórz skrypt powłoki, który następnie uruchomi program i skrypt Ruby.

Aby zgłosić pracę, ja zwykle korzystam:

crontab -l > x3 
echo "20 0 * * * /usr/bin/ruby /Users/tamer/scripts/sftp.rb" >> x3 
crontab < x3 
rm x3 
+1

nie wystarczy użyć 'crontab -e' edytować plik konfiguracyjny crontab (zamiast przy użyciu pliku tymczasowego x3)? – snowbound

+1

@snowbound: Może, ale tylko wtedy, gdy wiedziałem/zapamiętałem, że opcja istnieje i jeśli chcę zrobić interaktywną edycję. Gdybym pisał skrypt, oprócz użycia lepszej tymczasowej nazwy pliku (na przykład z 'mktemp'), prawdopodobnie zrobiłbym to tak, jak pokazano. Lub, ponieważ zwykle utrzymuję mój wpis 'crontab' pod kontrolą kodu źródłowego, edytowałbym wersję główną pliku i ponownie ją przesyłam po sprawdzeniu zmiany. –

+0

Twoje podejście ma również tę zaletę, że można je wywoływać programowo za pomocą innego skryptu: D – snowbound

Powiązane problemy