waduh mas... sampeyan harus lebih banyak mendalami "Linux Bash Shell
Scripting". soalnya, semua kesalahan/error yang terjadi itu semua karena
mas salah ketik sintaks. seperti tanda ' (kutip satu) di bash beda
representasinya sama ' (kutip satu) di shell mysql.

ini contohnya yang punya sampeyan:

#----------start-------------
FILES="/mnt/serverku/test_out/060530.txt"

for file in $FILES
do
mysql -u root --password=pswd table_ku  -e "LOAD DATA INFILE '$FILES'
INTO
TABLE lpc"
done
#--------------eof-----------------

seharusnya sintaksnya seperti ini :
#----------start-------------
FILES="/mnt/serverku/test_out/060530.txt"

for file in $FILES
do
mysql -u root --password=pswd table_ku  -e "LOAD DATA INFILE "$FILES" INTO
TABLE lpc"
done
#--------------eof-----------------

coba perhatikan pemakaian tanda kutip satu dan kutip dua-nya.

trus lagi, di bash, setiap tanda enter berarti memulai satu perintah baru.
jadi, kalo mas ketikin :

mysql -u root --password=pswd table_ku  -e "LOAD DATA INFILE '$FILES' INTO
TABLE lpc"

hasilnya adalah error untuk perintah baris pertama (mysql), dan error
untuk baris kedua (perintah TABLE tidak ada di shell)


untuk latihan coba2, ini saya kasih contoh lagi...
coba ketikkan dan lihat hasilnya :
#-----------START SCRIPT-------------
#!/bin/bash

VAR=variabelku

echo $VAR
echo '$VAR'
echo "$VAR"
echo '"$VAR"'
echo "'$VAR'"
echo \'$VAR\'
echo \"$VAR\"

#-------------EOF-------------------

cobain lagi mas..

salam,
denny


> On Tue, 2006-06-06 at 05:46, Yanu Widodo wrote:
>> On Sun, 2006-06-04 at 08:56, Denny Zulfikar wrote:
>> > for FILES in `ls /mnt/serverku/test_out/`
>> > do
>> > mysql -u dbrecord --password=passwd -e "use temp; load data local
>> infile
>> > "/temp/$FILES" into table proses_01"
>>
>> hasilnya kurang lebih:
>> # sh coba.sh
>> ERROR at line 1: File 'ls /mnt/serverku/test_out/' not
>> found (Errcode: 2)
>>
>> ckckckckck, ini yg saya pusing sejak kemarin : menjadikan "/temp/$FILES"
>> sebuah variable yg dinamis. kalo dibikin :
>>
>> #--------start-------------
>> #!/bin/bash
>>
>> tanggal=$(date +%y%m%d)
>>
>> mysql -u dbrecord --password=passwd -e "use temp; load data local infile
>> "/temp/$tanggal" into table proses_01"
>>
>> #--------eof--------------
>
> untuk sekedar testing commandnya bisa jalan di bash
>
> akhirnya saya coba modif2 jadi gini
> hore, bisa masuk, tapi null semua
> (he he he)
>
> #----------start-------------
> FILES="/mnt/serverku/test_out/060530.txt"
>
> for file in $FILES
> do
> mysql -u root --password=pswd table_ku  -e "LOAD DATA INFILE '$FILES'
> INTO
> TABLE lpc"
> done
> #--------------eof-----------------
>
> krn emang masih lon lengkap,
> akhirnya command trus saya coba lengkapi dengan
>
> #-----------awal potongan
> mysql -u root --password=terminater dvd_cam  -e "LOAD DATA INFILE
> '$FILES' INTO
> TABLE lpc FIELDS TERMINATED BY ',' ENCLOSED BY '"'"
>
> #-----------akhir potongan
>
> tapi hasilnya
>
> #sh coba.sh
> coba.sh: line 5: unexpected EOF while looking for matching `''
> coba.sh: line 7: syntax error: unexpected end of file
>
>
> padahal command itu bisa jalan kalo kita masuk ke mysql dulu.
>
> kira2 apa ada yg salah ya ?
> atas bantuannya terima kasih banyak ....
>
> salam,
> yanu



-- 
FAQ milis di http://wiki.linux.or.id/FAQ_milis_tanya-jawab
Unsubscribe: kirim email ke [EMAIL PROTECTED]
Arsip dan info milis selengkapnya di http://linux.or.id/milis

Kirim email ke