Yang ingin saya lakukan adalah membuat beberapa pernyataan sql informix & menjalankannya melalui skrip bash.
Inilah yang saya miliki sejauh ini (ini berfungsi) tetapi dimaksudkan untuk dijalankan dari pekerjaan cron sehingga hanya dilakukan satu hari pada suatu waktu:
echo "
update hst`date --date='yesterday' +%m%d%y`
set x = 'GARP'
where y in ('CRE', 'LAC', 'SRL', 'JAG', 'JNM', 'BIM')
and appl = '';
" > update_x_hst.sql
chmod 777 update_x_hst.sql
isql -s history_hst update_x_hst.sql
rm update_x_hst.sql
Saya harus melakukannya dengan cara ini karena sistem saya bekerja dengan membuat tabel setiap hari, jadi saya akan memiliki hst070810, hst070910, hst071010, dan seterusnya sebagai tabel saya bahwa saya perlu memperbarui.
Saya ingin melakukan sesuatu yang akan membuat file sql dan kemudian jalankan dan kemudian lakukan lagi dan lagi untuk beberapa kali, dalam for for loop.
#!/bin/bash
for x in {1..11}
do
echo "
update hst`date --date='$x days ago' +%m%d%y`
set x = 'Complete'
where y = 1;
" > update_x_hst.sql
chmod 777 update_x_hst.sql
isql -s history_hst update_x_hst.sql
rm update_x_hst.sql
done
Masalahnya di sini adalah ia tidak ingin membaca variabel $ x dengan benar sehingga pernyataan gagal.
Ada ide?