Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Cron w Cakephp
Forum PHP.pl > Forum > PHP
Randallmaster
Witam, próbuję uruchomić Console aby dodać crona ale niestety mi nie wychodzi.

Odpalam Terminal (OSX): i wpisuję:

cd /lokalizacja/projektu/app
--Przechodzi mi do katalogu
Console/cake
--wywala błąd env: bash\r: No such file or directory - a plik na 100% tam się znajduje

Co mogę robić źle że nie chce mi uruchomić konsoli?

Z góry dziękuję za odpowiedź.
Riggs
Plik ma atrybut x?
Komenda php jest dostępna z terminala?
kartin
Pewnie masz w skrypcie Windowsowe znaki końca linii (CR+LF). Musisz zamienić na Uniksowe (LF).
Jeśli masz program file to możesz sprawdzić w konsoli:
Kod
file Console/cake
Wtedy sprawa znaków się wyjaśni.
Randallmaster
Cytat(Riggs @ 24.06.2015, 14:20:14 ) *
Plik ma atrybut x?
Komenda php jest dostępna z terminala?

atrybut 777
komenda php jest dostępna
brew też działa

Cytat(kartin @ 24.06.2015, 14:22:20 ) *
Pewnie masz w skrypcie Windowsowe znaki końca linii (CR+LF). Musisz zamienić na Uniksowe (LF).
Jeśli masz program file to możesz sprawdzić w konsoli:
Kod
file Console/cake
Wtedy sprawa znaków się wyjaśni.

programu file nie mam sad.gif

po wpisaniu php rzuca mi błędem:

PHP Warning: Module 'intl' already loaded in Unknown on line 0

Warning: Module 'intl' already loaded in Unknown on line 0

Czy to może być powód?

Kartin a jak zmienić te znaki?
kartin
np.
Kod
brew install dos2unix
dos2unix Console/cake
Randallmaster
zainstalowałem wykonałem:

cd /lokalizacja/projektu/app/Console
dos2unix cake
--dos2unix: konwersja pliku cake do formatu uniksowego…
--wykonało się
--uruchamiam
cake
-- no i to samo -bash: cake: command not found
sad.gif
Pyton_000
php cacke
kartin
Cytat(Randallmaster @ 24.06.2015, 15:02:16 ) *
cd /lokalizacja/projektu/app/Console

--uruchamiam
cake

Skoro tym razem przeszedłeś do katalogu w którym masz skrypt, to powinieneś wywołać go ./cake
Randallmaster
Cytat(kartin @ 24.06.2015, 16:26:48 ) *
Skoro tym razem przeszedłeś do katalogu w którym masz skrypt, to powinieneś wywołać go ./cake


Dzięki udało się uruchomić a jak teraz powinna wyglądać komenda co 1 minute?
smile.gif

Shell już działa smile.gif
kartin
Musisz dodać zadanie do crona. Pewnie masz dostępny program crontab, więc:
Kod
crontab -e

Ostatecznie możesz też wpisać w systemowej tabeli w pliku /etc/crontab
Co minutę, czyli we wszystkich pięciu "kolumnach" * a później polecenie które chcesz wywołać. Opis masz w dokumentacji.
Randallmaster
Dodałem do crona linijkę
env EDITOR=nano crontab -e
-- zastanawia mnie to że zapisuje w dziwnym katalogu tmp/crontab.Bac9ascD
-- ale w pliku /usr/lib/cron/tab/USER/ -- linijke dodaje więc teoretycznie powinno działać

* * * * * /patch/to/app/Console/cake test

zapisałem i nie działa sad.gif

jak wywołam samo

/patch/to/app/Console/cake test
--działa i dodaje wpis do bazy danych
Pyton_000
bo musisz podać czym chcesz odpalić cake

np:

* * * * * /usr/bin/php /patch/to/app/Console/cake test
Randallmaster
Dziękuję za pomoc wszystko już działa smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.