Untuk menghindari keharusan mengetikkan path absolut ke suatu perintah, shell memperkenalkan $PATHvariabel lingkungan, setiap direktori dipisahkan oleh a :dan pencarian dilakukan dari kiri ke kanan. cronsering membersihkan seluruh lingkungan, termasuk $PATHvariabel ini . Oleh karena itu, skrip mungkin berperilaku berbeda di cron Anda dibandingkan dengan perilaku di shell.
Gunakan jalur absolut
Jalankan which db2sebagai db2inst1pengguna untuk mendapatkan path lengkap untuk db2program. Jika outputnya /usr/bin/db2, perintah cron Anda akan terlihat seperti:
/usr/bin/db2 connect to myDB2
Setel variabel PATH
Jalankan echo "$PATH"sebagai db2inst1pengguna untuk mendapatkan $PATHvariabel 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"