Do tej pory nigdy nie próbowałem dodawać crontask na moim komputerze Mac. Ku mojemu zaskoczeniu spowodowało to błąd ...
[hayek@mac:/www/] 02:33:22 PM: crontab -e 1 .
crontab: no crontab for hayek - using an empty one
crontab: "/usr/bin/vi" exited with status 1
Jak mogę dowiedzieć się, dlaczego powoduje ten błąd?
Korzystam z systemu Mac OS X Lion 10.7.2
crontab file
zainstalować tabelę z zewnętrznego pliku? Lub używając innego edytora, takiego jakEDITOR=NANO crontab -e
?crontab -l
pokazuje Czy są jakieś inne wiadomości w/var/log/cron.log
lub/var/log/system.log
?Odpowiedzi:
W ~ / .vimrc dodaj:
źródło
~/.vimrc
Problem okazał się być
vi
i nie ma nic wspólnego z cronem. Robiexport EDITOR=vim
naprawiłźródło
export EDITOR=vim
następnie spróbuj .EDITOR=vim
nie naprawiło - po prostu doprowadziło mnie do nowego błęducrontab: temp file must be edited in place
. Wolę vima, jednak edytuję cronjobs tak rzadko, że cieszę się, że to robięNANO
... chociaż jeśli ktoś zna tę poprawkę, jestem bardzo zainteresowany.W przypadku podobnego problemu, jeśli pojawi się komunikat:
Próbować:
1) Dodaj do .bash_profile
2) Dodaj do .vimrc
Źródło: http://drawohara.com/post/6344279/crontab-temp-file-must-be-edited-in-place
źródło
alias crontab "export VIM_CRONTAB=true; /usr/bin/crontab"
Twój edytor w zmiennej systemowej EDITOR to vi i vi to nie działa.
Próbować:
źródło
Miałem ten sam problem i postępowałem zgodnie ze wskazówkami dotyczącymi tworzenia tabeli:
I to stworzyło tabelę cron, a potem mogłem uruchomić
z vi jako domyślnym edytorem i nie miał problemów. To tak, jakby vi nie mógł zapisać pliku, ale po utworzeniu może uzyskać do niego dostęp. Jest to zgodne z możliwością uruchamiania:
Co ciekawe, tabele są przechowywane w
które można odczytać tylko jako sudo.
źródło
Najlepszym sposobem na zdiagnozowanie tego byłoby utworzenie nowej tabeli crontab z prostym wpisem:
Jeśli to działa, problem dotyczy dodanego polecenia. Czy możesz podzielić się nim z nami, a także podzielić się wynikami, gdy wykonasz go bezpośrednio z Terminal.app, a nie z crontab?
źródło
/bin/date
zwracaWed Nov 23 15:03:49 PST 2011
zgodnie z oczekiwaniami.cron jest przestarzały na korzyść wersji uruchomionej.
Lingon to świetne małe narzędzie do konfigurowania uruchomionych agentów; kiedyś był darmowy, ale obecnie wydaje się, że kosztuje 3 USD.
Wikipedia ma dobrą stronę uruchomieniową opisującą wszystkie klawisze oraz narzędzie launchctl, którego używasz do aktywacji / dezaktywacji.
źródło
Dodanie
au BufEnter /private/tmp/crontab.* setl backupcopy=yes
do vimrc naprawiło to dla mnie. Spójrz tutaj:http://vim.wikia.com/wiki/Editing_crontab
źródło
Widziałem ten sam problem w OSX. Odpowiedzią jest uruchomienie jako root za pomocą polecenia sudo, np .:
Ten pomysł dostałem od Gökhan Barış Aker powyżej.
źródło
sudo
tobą umieścisz zadania crona pod rootem użytkownika. Pliki cron są różne dla twojego normalnego użytkownika i roota.