Home
This text will be replaced

Cara Mudah Menyalin Kolom File Teks PDF Print E-mail
Oleh: Taufik Abidin   
Tuesday, 19 September 2006
Bagi seorang programmer, file teks bukanlah sesuatu file yang aneh karena file tipe ini sering kali digunakan sebagai input suatu program. Namun, untuk bisa menerima input dari file teks, file harus disusun dalam format tertentu, sehingga program dapat diinstruksikan membaca file tersebut dengan benar.
 
Pengorganisasian data dalam format tabel merupakan format yang paling sederhana dan paling sering kita temui. Dalam format ini, antara satu data dengan data yang lain dipisahkan dengan '\n' atau 'newline'. Sedangkan data dalam kolom dipisahkan oleh pemisah seperti spasi, tab, koma, ataupun karakter-karakter khusus lainnya.
 

Berikut contoh sebuah file teks yang disusun dalam bentuk tabel dan antar kolom, data dipisahkan menggunakan spasi. Anggap saja nama file teks ini adalah equipment.lst. Untuk contoh tips yang satu ini, asumsikan pula file teks ini berukuran besar (900,000 baris) dan tidak mungkin dibuka menggunakan MS. Excel yang notabene hanya mampu menampung data tidak lebih dari 65000 baris.
 
1. Mouse 102 -29 45 -1
2. Harddisk 23 -34 21 0
3. LCD+Monitor 1234 -2 1 22 2
4. Laser+Printer 2222 -3 23 90 -2
5. Memori 23 -4 56 7
6. LCD+Projector 342 5 43 -1
:
:
:
900000. IBM+Thinkpad+Laptop 342 33 22 11
 
Asumsikan pula bahwa kita ingin menyalin data dari kolom tertentu dan kemudian menyimpannya dalam sebuah file teks baru. Sebagai contoh menyalin semua nama peralatan, atau kolom kedua dari contoh di atas, dan menyimpannya dalam file teks baru dengan nama alat.lst.
 
Banyak cara menyelesaikan problem di atas, diantaranya menulis program kecil dengan C, Java, PERL atau program skrip lainnya. Disamping menulis program, sebenarnya ada cara yang lebih mudah lagi. Bahkan hanya memerlukan 1 baris pernyataan saja! (Note: solusi diasumsikan ditulis pada shell command OS Linux atau Unix). 
 
Berikut adalah solusinya:
 
cat equipment.lst | awk -F ' ' '{print $2}' > alat.lst

Bagaimana pula bila ingin menyalin 10000 baris pertama dari file equipment.lst? Mudah! gunakan saja command head sebagai berikut:

head -10000 equipment.lst | awk -F ' ' '{print $2}' > alat.lst

Atau bila ingin menyalin kolom ketiga dan 2500 baris terakhir dari file equipment.lst, dapat menggunakan command tail sebagai berikut:

tail -2500 equipment.lst | awk -F ' ' '{print $3}' > alat.lst
 
Selamat mencoba!
 
Prev