Cron'un doğru PATH'leri aramasını sağlamaya çalışıyorum. Kabuktan bir Python betiği çalıştırdığımda, betik, bashrc'de ayarlanan PATH'leri kullandığından sorunsuz çalışıyor, ancak cron kullandığımda tüm PATH'ler bashrc'den kullanılmıyor. Bashrc gibi cron için PATH'leri girebileceğim bir dosya veya bashrc'den PATH'leri çağırmanın bir yolu var mı?
Maalesef bunu doğru yazdığımı sanmıyorum, çalıştırmak için doğru betiği alabiliyorum (burada sorun crontab'daki betiğe giden PATH değil), sadece o komut dosyası çalışırken bir yapı çalıştırıyorum ve bu PATH'ler ayarlandı .bashrc
. Betiği oturum açtığımda çalıştırdığımda, .bashrc
PATH'ler içeri çekiliyor. Cron bir kabukta çalışmadığı için içeri çekmiyor .bashrc
. Bunu bir bash betiği sarmalayıcısı yazmak zorunda kalmadan almanın bir yolu var mı?
source /etc/profile
yemek yemeli .bashrc
ve diğer birçok potansiyel olarak eksik şeydir. Açık profil kaynak kullanımı, bazı komut dosyalarının "bağımsız" çalışmasını istiyorsanız oldukça yararlı olur, aynı zamanda garip ortamlardan korur ve bu yüzden ...
sh
crontab tarafından çağrılan betikleri çalıştırır. * * * * * echo $PATH > ~/crontab_path.txt
Bir dakika sonra dosya gibi bir iş ekleyerek ve kontrol ederek yolu güncellediğini onaylayabilirsiniz .