ysh milis linux programming,
maaf pertanyaan dari newbie

saya punya file, 'msc_comma'
M6040,MSC_KB1X,2006-01-21,16,16,07,54,NAT/H'0817,NAT/H'2045,2,0,0,50,ALM_OFF
M6041,MSC_KB1X,2006-01-22,17,17,08,59,NAT/H'0817,NAT/H'2045,45,23,110,123,34567,12%,123

masing2 dipisahkan dengan tanda ",", sy ingin menggabungkan field ke 3 dan ke-4 sehingga field gabungan tadi bisa saya masukan ke database postgres sebagai type timestamp (untuk memudahkan visualisasi tanda "+" saya gunakan menggantikan 'space")

saya coba eksekusi dengan script berikut :

[EMAIL PROTECTED] ~]$ ./test_comma.sh  msc_comma
M6040,MSC_KB1X,2006-01-21,16,16,07,54,NAT/H'0817,NAT/H'2045,2,0,0,50,ALM_OFF + M6041,MSC_KB1X,2006-01-22,17,17,08,59,NAT/H'0817,NAT/H'2045,45,23,110,123,34567,12%,123 +

isi dari test_comma.sh sendiri adalah
file test_comma.sh

#!/bin/gawk -f
 {
        split($0, field, ",")
       $3 = $3"+"$4
       print
       }


kenapa ya character "+" ditambahkan di belakang?

padahal kalau saya eksekusi script 'test_tab.sh' yg similiar u file msc_tab di bawah ini yang antar fieldnya dipisahkan dengan 'tab'

M6040 MSC_KB1X 2006-01-21+16 16 07 54 NAT/H'0817 NAT/H'2045 2 0 0 50 ALM_OFF
M6041 MSC_KB1X 2006-01-22+17 17 08 59 NAT/H'0817 NAT/H'2045 45 23 110 123 34567 12% 123


[EMAIL PROTECTED] ~]$ ./test_tab.sh msc_tab
M6040 MSC_KB1X 2006-01-21+16 16 07 54 NAT/H'0817 NAT/H'2045 2 0 0 50 ALM_OFF
M6041 MSC_KB1X 2006-01-22+17 17 08 59 NAT/H'0817 NAT/H'2045 45 23 110 123 34567 12% 123

file test_tab.sh sendiri adalah :

#!/bin/gawk -f

 {
       $3 = $3"+"$4
       print
       }

field 3 dan 4 berhasil bergabung menjadi satu

atau bapak/ibu punya cara lain yang lebih mudah untuk menggabungkan kedua field tadi, saya tdk bisa menggunakan 'gawk' mengingat jumlah field masing2 baris berbeda banyaknya

tks sebelumnya


--
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis

Kirim email ke