Untuk menghindari keharusan mengetikkan path absolut ke suatu perintah, shell memperkenalkan $PATH
variabel lingkungan, setiap direktori dipisahkan oleh a :
dan pencarian dilakukan dari kiri ke kanan. cron
sering membersihkan seluruh lingkungan, termasuk $PATH
variabel ini . Oleh karena itu, skrip mungkin berperilaku berbeda di cron Anda dibandingkan dengan perilaku di shell.
Gunakan jalur absolut
Jalankan which db2
sebagai db2inst1
pengguna untuk mendapatkan path lengkap untuk db2
program. Jika outputnya /usr/bin/db2
, perintah cron Anda akan terlihat seperti:
/usr/bin/db2 connect to myDB2
Setel variabel PATH
Jalankan echo "$PATH"
sebagai db2inst1
pengguna untuk mendapatkan $PATH
variabel dan pastikan variabel ini juga tersedia di skrip cron Anda. Misalnya, jika outputnya adalah /usr/local/bin:/usr/bin:/bin
, Anda akan meletakkan baris berikutnya di bagian atas skrip shell Anda:
export PATH="/usr/local/bin:/usr/bin:/bin"
Anda harus mendefinisikan apa itu db2 dan myDB2 , jika tidak gunakan lokasi absolut dari ' file ' atau ' aplikasi ' yang ingin dijalankan.
Contoh:
sumber