Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-10 Terurut Topik Yanu Widodo
Thank-q mas denny, udah bisa masuk. saya baru nyoba. 

ternyata memang salah memasukkan variable

makasih atas bantuannya yak ...


salam,

yanu


On Thu, 2006-06-08 at 07:48, Denny Zulfikar wrote:
 sintaks di mysql nya salah mas...
 
 seharusnya :
 mysql -u root --password=pswd table_ku  -e LOAD DATA INFILE '$file' INTO
 TABLE lpc
 
 bukan ini :
 mysql -u root --password=pswd table_ku  -e LOAD DATA INFILE '$FILES' INTO
 TABLE lpc
 
 reasonnya sudah saya kirimkan japri ke email mas yanu.
 
 salam,
 denny.
 
  #
  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
  #--
 
  tapi kalo coba pake :
  FILES=`ls /mnt/serverku/test_out/060530.txt`
 
  hasilnya, for udah bisa jalan, tapi muncul ERROR ginian:
 
  # sh coba.sh
  ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
  ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
  ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
  ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
  dst
 
 
  atas bantuannya, makasih bangett
 
 
  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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-07 Terurut Topik Denny Zulfikar
sintaks yang bener :
#
FILES=find /mnt/serverku/test_out/*
for file in $FILES
do
mysql -u root --password=pswd table_ku  -e LOAD DATA INFILE '$FILES' \
INTO TABLE lpc
done
#--

maaf ada kekeliruan penulisan sintaks pada postingan saya sebelumnya.

salam,
denny

 On Tue, 2006-06-06 at 07:47, Denny Zulfikar wrote:
 #--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-

 Ok mas deny
 Thanks atas bantuannya
 kalo gini kira-kira yg salah apa yah ?!

 padahal sintaxnya udah sesuai sesuai dengan Primbon:

 LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE '/|file_name|/.txt'
 [REPLACE | IGNORE]
 INTO TABLE /|tbl_name|/
 [FIELDS
 [TERMINATED BY '/|string|/']
 [[OPTIONALLY] ENCLOSED BY '/|char|/']
 [ESCAPED BY '/|char|/' ]
 ]
 [LINES
 [STARTING BY '/|string|/']
 [TERMINATED BY '/|string|/']
 ]
 [IGNORE /|number|//|col_name_or_user_var|/,...)]
 [SET /|col_name|/ = /|expr|/,...)] LINES]
[(/|col_name_or_user_var|/,...)]
[SET /|col_name|/ = /|expr|/,...)]


 FYI, kalo saya make single file ternyata udah bisa
 #
 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
 #--

 tapi kalo coba pake :
 FILES=`ls /mnt/serverku/test_out/060530.txt`

 hasilnya, for udah bisa jalan, tapi muncul ERROR ginian:

 # sh coba.sh
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 dst


 atas bantuannya, makasih bangett


 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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-07 Terurut Topik Yanu Widodo
On Wed, 2006-06-07 at 04:24, Kamas Muhammad wrote:

 Gimana kalau anda coba:
 
 FILES=`find /mnt/serverku/test_out -type f`
 Semangat! :)

dalam script sudah saya modif sesuai penulisan diatas
namun hasilnya masih tetap :

# sh coba.sh
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)

mohon pencerahan

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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-07 Terurut Topik Yanu Widodo
On Thu, 2006-06-08 at 00:04, Yanu Widodo wrote:
 On Wed, 2006-06-07 at 04:24, Kamas Muhammad wrote:
 
  Gimana kalau anda coba:
  
  FILES=`find /mnt/serverku/test_out -type f`
  Semangat! :)
 
 dalam script sudah saya modif sesuai penulisan diatas
 namun hasilnya masih tetap :
 
 # sh coba.sh
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 2)
 

pagi everyone,

Barusan saya nyoba.

kalo yg dipake single file, bisa masuk :
FILES=`find /mnt/serverku/test_out -iname 060501.txt`

tapi kalo diganti jadi :
FILES=`find /mnt/serverku/test_out -iname '*.txt'`

errornya masih sama dgn yg diatas.

padahal kalo dijalanin dari shell hasilnya udah keluar sesuai dgn yg
diharapkan

# find /mnt/serverku/test_out -iname '*.txt'
/mnt/serverku/test_out/060501.txt
/mnt/serverku/test_out/060502.txt
/mnt/serverku/test_out/060503.txt
/mnt/serverku/test_out/060504.txt
/mnt/serverku/test_out/060505.txt
/mnt/serverku/test_out/060506.txt
/mnt/serverku/test_out/060507.txt
dst


mungkin disambung entar malam kali yak ?!
atas bantuannya, makasih banyak2 ...




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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-07 Terurut Topik Denny Zulfikar
sintaks di mysql nya salah mas...

seharusnya :
mysql -u root --password=pswd table_ku  -e LOAD DATA INFILE '$file' INTO
TABLE lpc

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

reasonnya sudah saya kirimkan japri ke email mas yanu.

salam,
denny.

 #
 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
 #--

 tapi kalo coba pake :
 FILES=`ls /mnt/serverku/test_out/060530.txt`

 hasilnya, for udah bisa jalan, tapi muncul ERROR ginian:

 # sh coba.sh
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
 dst


 atas bantuannya, makasih bangett


 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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-06 Terurut Topik Yanu Widodo
On Tue, 2006-06-06 at 07:47, Denny Zulfikar wrote:
 #--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-
 


Allow, apakah ada yg masih standby jam 03.45 gini ?

Btw, setelah dicoba-coba, kalo pake single file bisa
FILES=/mnt/serverku/test_out/060530.txt

tapi kalo coba make yg gini :
FILES=`ls /mnt/serverku/test_out`

for-nya sudah mau jalan (sesuai banyaknya file), tapi data-data dalam
file tsb nggak mau dimasukkan. Apakah ada yg tahu sebabnya ?

atas bantuannya, makasih banyak ya

trims,
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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-06 Terurut Topik Kamas Muhammad
Yanu Widodo wrote:
 Allow, apakah ada yg masih standby jam 03.45 gini ?
 
 Btw, setelah dicoba-coba, kalo pake single file bisa
 FILES=/mnt/serverku/test_out/060530.txt
 
 tapi kalo coba make yg gini :
 FILES=`ls /mnt/serverku/test_out`
 
 for-nya sudah mau jalan (sesuai banyaknya file), tapi data-data dalam
 file tsb nggak mau dimasukkan. Apakah ada yg tahu sebabnya ?
 

Kalau kira-kira saya, itu karena pada hasil `ls` anda, yang keluar cuma
nama file saja, tanpa path. Pada contoh pertama, file anda termasuk full
pathnya.

Gimana kalau anda coba:

FILES=`find /mnt/serverku/test_out -type f`

 atas bantuannya, makasih banyak ya
 
 trims,
 yanu
 
 

Semangat! :)

-- 
Kamas Muhammad



signature.asc
Description: OpenPGP digital signature


Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-06 Terurut Topik Denny Zulfikar

maaf, saya keliru nulis sintaksnya...

:)

seharusnya :
LOAD DATA INFILE $PATH/$FILES
dimana, $PATH adalah path dari direktori yang anda maksud.

bisa juga pakai perintah find, kalau tidak ingin menuliskan lagi pathnya.

for FILES in `find /mnt/serverku`
do
  COMMAND + ARGUMENT
done

makasih mas kamas muhammad atas koreksinya,

salam,
denny


 From: Kamas Muhammad [EMAIL PROTECTED]
 Kalau kira-kira saya, itu karena pada hasil `ls` anda, yang keluar cuma
 nama file saja, tanpa path. Pada contoh pertama, file anda termasuk full
 pathnya.

 Gimana kalau anda coba:

 FILES=`find /mnt/serverku/test_out -type f`

-

 Yanu Widodo wrote:
 Allow, apakah ada yg masih standby jam 03.45 gini ?

 Btw, setelah dicoba-coba, kalo pake single file bisa
 FILES=/mnt/serverku/test_out/060530.txt

 tapi kalo coba make yg gini :
 FILES=`ls /mnt/serverku/test_out`

 for-nya sudah mau jalan (sesuai banyaknya file), tapi data-data dalam
 file tsb nggak mau dimasukkan. Apakah ada yg tahu sebabnya ?

 atas bantuannya, makasih banyak ya

 trims,
 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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-06 Terurut Topik Yanu Widodo
On Tue, 2006-06-06 at 07:47, Denny Zulfikar wrote:
 #--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-

Ok mas deny
Thanks atas bantuannya
kalo gini kira-kira yg salah apa yah ?!

padahal sintaxnya udah sesuai sesuai dengan Primbon:

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE '/|file_name|/.txt'
[REPLACE | IGNORE]
INTO TABLE /|tbl_name|/
[FIELDS
[TERMINATED BY '/|string|/']
[[OPTIONALLY] ENCLOSED BY '/|char|/']
[ESCAPED BY '/|char|/' ]
]
[LINES
[STARTING BY '/|string|/']
[TERMINATED BY '/|string|/']
]
[IGNORE /|number|//|col_name_or_user_var|/,...)]
[SET /|col_name|/ = /|expr|/,...)] LINES]
   [(/|col_name_or_user_var|/,...)]
   [SET /|col_name|/ = /|expr|/,...)]


FYI, kalo saya make single file ternyata udah bisa
#
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
#--

tapi kalo coba pake :
FILES=`ls /mnt/serverku/test_out/060530.txt`

hasilnya, for udah bisa jalan, tapi muncul ERROR ginian:

# sh coba.sh
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
ERROR 13 at line 1: Can't get stat of '%s' (Errcode: 36)
dst


atas bantuannya, makasih bangett


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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-05 Terurut Topik Yanu Widodo
Oh, makasih banget mas denny
ide yg sangat cerdas !!!



trims,
yanu


On Sun, 2006-06-04 at 08:56, Denny Zulfikar wrote:
 sebenarnya, smua itu bisa dilakukan melalui single command dari bash. coba
 mysql --help ntar ketemu manualnya.
 
 saya kasih contoh gini, misal mau menjalankan :
 username : dbrecord
 password : passwd
 host : localhost
 database name : record
 table_name : proses_harian
 query : select * from record_juni
 
 nah, cara menjalankan dari shell :
 
 $ mysql -u dbrecord --password=passwd -e use record; select * from
 record_juni
 
 ket :
 -u = username
 --password=[PASSWORD] = password username
 -e = execute perintah sql. kalau perintahnya banyak, gunakan delimiter ;
 tanpa tanda kutip.
 
 gimana? udah dicoba?
 
 nah, gimana kalo yang dieksekusi adalah file text ke database, kita coba
 dengan contoh kasus punya mas yanu :
 
 $ mysql -u dbrecord --password=passwd -e use temp; load data local infile
 /temp/060501.bnk into table proses_01
 
 oke?!
 
 lanjut, sekarang gimana caranya supaya semua data yang masuk dari satu
 direktori dimasukkan ke database? kita coba gunakan bash script :
 
 #--START SCRIPT---
 #!/bin/bash
 # author : Denny Zulfikar
 
 for FILES in `ls /temp`
 do
 mysql -u dbrecord --password=passwd -e use temp; load data local infile
 /temp/$FILES into table proses_01
 
 rm /temp/$files  # untuk menghapus file yang udah dimasukin ke database
 
 done
 
 #-EOF-
 
 kalau pingin lebih spesifik (misalkan data tsb disortir dalam tabel
 harian), cukup tambahin aja scriptnya supaya mendeteksi hari file data tsb
 dibuat. kemudian jadikan variabel, lalu ganti nama tabel proses_01
 menjadi nama variabel tanggal pembuatan file tsb, misalnya
 proses_$DDMMYY. jadi nanti mas yanu bisa mendapatkan data yang sudah
 tersortirt berdasarkan tgl bln thn (tabel proses_310506, proses_010606,
 proses_020606 dst).
 
 gimana cara menjalankannya, cukup masukin ke cron, dan set aja per-satu jam.
 
 nah, sekarang gimana supaya realtime? mas yanu perlu membuat daemon yang
 selalu memeriksa isi direktori /temp apakah sudah terisi file baru atau
 belum. bisa cobain pakai perl atau bash script..:)
 
 selebihnya gimana? improvisasi..!! huehuehue...:)
 
 salam,
 denny
 
 
  Misalnya saya mo gini ..
 
  user name : root
  pasword : pwd
  host : localhost
  database name : temp
  table name : proses_01
 
  biasanya saya login dulu ke mysql server
 
  # mysql -u root -p
 
  trus jalanin command2 dari situ ...
 
  mysql USE temp;
  mysql LOAD DATA LOCAL INFILE '/temp/060501.bnk' INTO TABLE proses_01;
 
  Ada yg tahu cara nge-Invoke command tsb dari shell [make batch mode]?
 
 


-- 
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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-05 Terurut Topik Yanu Widodo
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--

tapi kayaknya error code yg keluar bakalan sama dech

kalo semua data2nya dibaca dulu trus disimpan ke semacam buffer, mungkin
bisa, tapi kayaknya agak repot dikitt kali ya.

padahal, yg diinginkan adalah yg langsung gitu ...

btw, atas bantuannya makasih.


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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-05 Terurut Topik Yanu Widodo
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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-05 Terurut Topik Yanu Widodo
On Tue, 2006-06-06 at 06:36, Yanu Widodo wrote:
# 
mysql -u root --password=bgsscrt hi_cam -e LOAD DATA INFILE
'$FILES' INTO TABLE pcl FIELDS TERMINATED BY ',' ENCLOSED BY ''
# 

alhamdulillah,

alamak, ternyata cuma tinggal nambahin  ENCLOSED BY \' .
ok teman2. makasih atas pencerahannya yak. kalo ada problem baru, besok
disambung lagi ...


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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-05 Terurut Topik Denny Zulfikar

mas.. mas... salah tuh ketikannya mas...

bukan tanda ' (satu kutip), tapi tanda yang di dekat tombol jari manis
yang kiri. satu tombol sama tanda ~. tandanya yang ini nih... ` ` ` ` `
bukan ' ' '

salam
denny

 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)


-- 
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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-05 Terurut Topik Denny Zulfikar

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



[tanya-jawab] OOT : Deteksi File Baru

2006-06-03 Terurut Topik Yanu Widodo
Hi  All,
Assalamualaikum.

Numpang tanya, 

mungkin diantara men-temen yg berpengalan -yg lagi ngelembur- bisa memberikan 
pencerahan/ide
atas bberapa problem berikut.

di satu folder ada beberapa file teks yg tiap menit isi -recordnya-
bertambah, sedangkan nama file tergenerate berdasarkan tanggal.

$ ls /mnt/server_data/output
060501.tx1
060502.tx1
060503.tx1
060504.tx1
060505.tx1
060506.tx1
dst...

Saya sudah bikin tabel2 di MySQL server sesuai filed yg ada di file text
tersebut. Kemarin saya udah nyoba satu file ke dalam database,
resultnya: OK.

Yang jadi masalah, sejak kemarin saya belom mendapatkan ide biar jika
ada record baru di file2 tsb. bisa otomatis tersimpen dalam database.

atas bantuannya makasih 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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-03 Terurut Topik ilya alexander

On 03 Jun 2006 21:10:18 +0700, Yanu Widodo
[EMAIL PROTECTED] wrote:


Yang jadi masalah, sejak kemarin saya belom mendapatkan ide biar jika
ada record baru di file2 tsb. bisa otomatis tersimpen dalam database.


otomatis?
mungkin try work around, output program anda tsb, selain buang ke file,
juga insert langsung ke mysql nya.

or buat script (bash/perl/dlsb) yg baca file hari ini,
kalau barisnya bertambah, lalu insert ke mysql nya.

or periodic, sehari sekali, end of day, crontab jalanin script tsb

errr...ngejawab gak ya? :)

-i-
/ happy weekend all

--
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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-03 Terurut Topik Yanu Widodo
On Sun, 2006-06-04 at 01:25, ilya alexander wrote:
 On 03 Jun 2006 21:10:18 +0700, Yanu Widodo
 [EMAIL PROTECTED] wrote:
 
  Yang jadi masalah, sejak kemarin saya belom mendapatkan ide biar jika
  ada record baru di file2 tsb. bisa otomatis tersimpen dalam database.
 
 otomatis?
 mungkin try work around, output program anda tsb, selain buang ke file,
 juga insert langsung ke mysql nya.
 
 or buat script (bash/perl/dlsb) yg baca file hari ini,
 kalau barisnya bertambah, lalu insert ke mysql nya.
 
 or periodic, sehari sekali, end of day, crontab jalanin script tsb
 
 errr...ngejawab gak ya? :)
 

Ok, Thanks bera Mas Ilya
Nyoba2 dulu ah ...

-- Btw, apa yg sampean kemukakan adalah sebuah ide yg sangat cemerlang. 


Trims,
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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-03 Terurut Topik Yanu Widodo
On Sun, 2006-06-04 at 01:40, Yanu Widodo wrote:
 On Sun, 2006-06-04 at 01:25, ilya alexander wrote:
  On 03 Jun 2006 21:10:18 +0700, Yanu Widodo
  [EMAIL PROTECTED] wrote:
  
   Yang jadi masalah, sejak kemarin saya belom mendapatkan ide biar jika
   ada record baru di file2 tsb. bisa otomatis tersimpen dalam database.
  
  otomatis?
  mungkin try work around, output program anda tsb, selain buang ke file,
  juga insert langsung ke mysql nya.
  
  or buat script (bash/perl/dlsb) yg baca file hari ini,
  kalau barisnya bertambah, lalu insert ke mysql nya.
  
  or periodic, sehari sekali, end of day, crontab jalanin script tsb
  
  errr...ngejawab gak ya? :)
  
 
 Ok, Thanks bera Mas Ilya
 Nyoba2 dulu ah ...
 
 -- Btw, apa yg sampean kemukakan adalah sebuah ide yg sangat cemerlang. 
 
 

-- sambil belajar [nggak pake phpmyadmin dulu]

Misalnya saya mo gini ..

user name : root
pasword : pwd
host : localhost
database name : temp
table name : proses_01

biasanya saya login dulu ke mysql server

# mysql -u root -p

trus jalanin command2 dari situ ...

mysql USE temp;
mysql LOAD DATA LOCAL INFILE '/temp/060501.bnk' INTO TABLE proses_01; 

Ada yg tahu cara nge-Invoke command tsb dari shell [make batch mode]? 

atas bantuannya, makasih


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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-03 Terurut Topik Yanu Widodo
On Sun, 2006-06-04 at 01:25, ilya alexander wrote:
 On 03 Jun 2006 21:10:18 +0700, Yanu Widodo
 [EMAIL PROTECTED] wrote:
 
  Yang jadi masalah, sejak kemarin saya belom mendapatkan ide biar jika
  ada record baru di file2 tsb. bisa otomatis tersimpen dalam database.
 
 otomatis?
 mungkin try work around, output program anda tsb, selain buang ke file,
 juga insert langsung ke mysql nya.
 
 or buat script (bash/perl/dlsb) yg baca file hari ini,
 kalau barisnya bertambah, lalu insert ke mysql nya.
 


-- sambil belajar [nggak pake phpmyadmin dulu]

Misalnya saya mo gini ..

user name : root
pasword : pwd
host : localhost
database name : temp
table name : proses_01

biasanya saya login dulu ke mysql server

# mysql -u root -p

trus jalanin command2 dari situ ...

mysql USE temp;
mysql LOAD DATA LOCAL INFILE '/temp/060501.bnk' INTO TABLE proses_01; 

Ada yg tahu cara nge-Invoke command tsb dari shell [make batch mode]? 

atas bantuannya, makasih


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



Re: [tanya-jawab] OOT : Deteksi File Baru

2006-06-03 Terurut Topik Denny Zulfikar
sebenarnya, smua itu bisa dilakukan melalui single command dari bash. coba
mysql --help ntar ketemu manualnya.

saya kasih contoh gini, misal mau menjalankan :
username : dbrecord
password : passwd
host : localhost
database name : record
table_name : proses_harian
query : select * from record_juni

nah, cara menjalankan dari shell :

$ mysql -u dbrecord --password=passwd -e use record; select * from
record_juni

ket :
-u = username
--password=[PASSWORD] = password username
-e = execute perintah sql. kalau perintahnya banyak, gunakan delimiter ;
tanpa tanda kutip.

gimana? udah dicoba?

nah, gimana kalo yang dieksekusi adalah file text ke database, kita coba
dengan contoh kasus punya mas yanu :

$ mysql -u dbrecord --password=passwd -e use temp; load data local infile
/temp/060501.bnk into table proses_01

oke?!

lanjut, sekarang gimana caranya supaya semua data yang masuk dari satu
direktori dimasukkan ke database? kita coba gunakan bash script :

#--START SCRIPT---
#!/bin/bash
# author : Denny Zulfikar

for FILES in `ls /temp`
do
mysql -u dbrecord --password=passwd -e use temp; load data local infile
/temp/$FILES into table proses_01

rm /temp/$files  # untuk menghapus file yang udah dimasukin ke database

done

#-EOF-

kalau pingin lebih spesifik (misalkan data tsb disortir dalam tabel
harian), cukup tambahin aja scriptnya supaya mendeteksi hari file data tsb
dibuat. kemudian jadikan variabel, lalu ganti nama tabel proses_01
menjadi nama variabel tanggal pembuatan file tsb, misalnya
proses_$DDMMYY. jadi nanti mas yanu bisa mendapatkan data yang sudah
tersortirt berdasarkan tgl bln thn (tabel proses_310506, proses_010606,
proses_020606 dst).

gimana cara menjalankannya, cukup masukin ke cron, dan set aja per-satu jam.

nah, sekarang gimana supaya realtime? mas yanu perlu membuat daemon yang
selalu memeriksa isi direktori /temp apakah sudah terisi file baru atau
belum. bisa cobain pakai perl atau bash script..:)

selebihnya gimana? improvisasi..!! huehuehue...:)

salam,
denny


 Misalnya saya mo gini ..

 user name : root
 pasword : pwd
 host : localhost
 database name : temp
 table name : proses_01

 biasanya saya login dulu ke mysql server

 # mysql -u root -p

 trus jalanin command2 dari situ ...

 mysql USE temp;
 mysql LOAD DATA LOCAL INFILE '/temp/060501.bnk' INTO TABLE proses_01;

 Ada yg tahu cara nge-Invoke command tsb dari shell [make batch mode]?



-- 
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