Chcę po prostu uruchomić polecenie (właściwie skrypt powłoki) z danego katalogu jako zadanie crona. Jak mogę go uruchomić, aby był ustawiony na dany katalog bez użycia cd
.
16
Twoje pytanie nie ma sensu. Zastosowanie cd
. Jeśli poprosisz o odpowiedź, której nie chcesz użyć, cd
ponieważ wypróbowałeś ją i nie zadziałała, prawdopodobnie nie wpisałeś jej poprawnie w crontab.
Najprostszym sposobem byłoby napisanie małego skryptu powłoki, który wykona cd i uruchomi główne zadanie, a następnie cron skryptu.
&&
), ale możesz także napisać osobny skrypt, który zawiera wszystkie polecenia i po prostu umieścić ścieżkę do skryptu w cron, jak sugeruje Daenyth. Twój skrypt może zrobić coś takiego jak odczyt katalogu z pliku konfiguracyjnego, jeśli chcesz - chodzi o to, że jednak, jeśli chcesz wprowadzić nazwę katalogu do skryptu, nie jest to wymówka, aby go nie używaćcd
.Wystarczy podać ścieżkę do skryptu. Nie ma potrzeby
cd
:Jeśli twój skrypt szuka plików
.
, będziesz musiał użyćcd
:źródło
&&
, jak w odpowiedzi na linki @WillSheppard do, byłoby lepiej niż;
ponieważ&&
uruchamia następne polecenie tylko wtedy, gdy poprzednie polecenie zakończyło się powodzeniem.