Cara bergabung dan beberapa kolom ke file format CSV
- 4033
- 700
- Jermaine Mohr
Dalam contoh di bawah ini Anda dapat menemukan beberapa tips tentang cara bergabung dengan kolom dari beberapa file ke satu file nilai terpisah koma (CSV). Untuk membaca kolom membentuk beberapa file yang dapat kita gunakan tempel
memerintah. Pertimbangkan contoh berikut. Di direktori kotak pasir kami, kami memiliki 3 file di mana masing -masing berisi satu kolom tanggal:
$ ls f1 f2 f3 $ cat f1 az dr qw rt er $ cat f2 iu dr gg hh jj qq ee ui $ cat f3 qp df
Selanjutnya, kita dapat bergabung dengan mereka bersama tempel
:
$ paste f1 f2 f3 az iu qp dr df qw gg rt hh er jj qq ee ui
Secara default perintah pasta akan digunakan Tab
untuk memisahkan semua kolom dari satu sama lain. Perilaku ini dapat ditimpa dengan menggunakan -D
pilihan. Misalnya alih -alih file Delimited tab Kami membuat file yang dibatasi koma:
$ pasta -d, f1 f2 f3 az, iu, qp dr, dr, df qw, gg, rt, hh, er, jj ,, qq ,, ee ,, ui,
Oke, ini mudah. Tetapi bagaimana dengan bergabung dengan kolom yang dipilih dari beberapa file kolom? Pertimbangkan pengikut Tab
Delimited mengirim file kotak di mana setiap file berisi lebih dari satu kolom:
$ ls f4 f5 f6 $ cat f4 qw mn qw ty ix ao pi er sy $ cat f5 rk wp lp cy wn em $ cat f6 tr er wm ut vb mq rp el st
Menggunakan pasta pada semua file akan bergabung dengan semua kolom ke dalam output tunggal:
$ paste f4 f5 f6 qw mn qw rk wp tr er wm ty ix ao lp cy ut vb mq pi er sy wn em rp el st
Setelah kami memiliki output di atas yang dapat kami gunakan memotong
atau AWK
Perintah untuk memilih hanya kolom yang kami minati. Dalam contoh berikutnya kita akan bergabung dengan yang kedua dan ketiga dari a f4
file, kolom pertama dari f5
file dan kolom terakhir dari f6
dengan ,
Sebagai pembatas:
$ paste f4 f5 f6 | awk 'begin ofs = "," print $ 2, $ 3, $ 4, $ 8' mn, qw, rk, wm ix, ao, lp, mq er, sy, wn, st, st
Harap dicatat bahwa Anda dapat menentukan kolom output dalam urutan apa pun jadi misalnya ini juga merupakan perintah yang valid:
$ paste f4 f5 f6 | awk 'begin ofs = "," cetak $ 4, $ 8, $ 2, $ 3' rk, wm, mn, qw lp, mq, ix, ao wn, st, er, eh, sy, sy, sy
Demikian pula a memotong
Perintah dengan kombinasi tr
dapat digunakan untuk bergabung atau memisahkan beberapa kolom bentuk koma nilai terpisah file csv atau stdin:
$ paste f4 f5 f6 | tr '\ t ",' | cut -d, -f2,3,4,8 mn, qw, rk, wm ix, ao, lp, mq er, sy, wn, st
Hal terakhir yang disebutkan adalah bahwa untuk menyimpan output CSV baru Anda ke file yang perlu Anda gunakan pengalihan untuk mengarahkan kembali ke file baru. Misalnya kami membuat file baru yang dipanggil data saya.CSV
:
$ paste f4 f5 f6 | tr '\ t ",' | cut -d, -f2,3,4,8> mydata.CSV
Tutorial Linux Terkait:
- Cara Membaca dan Membuat File CSV Menggunakan Python
- Cara Terhubung ke Server FTP Menggunakan Python
- Menguasai loop skrip bash
- Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 1
- Pengantar Vagrant
- Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 3
- Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 2
- Contoh dan trik Contoh Tips Baris Bash Berguna - Bagian 4
- Pengantar Otomatisasi Linux, Alat dan Teknik
- Contoh dan trik Contoh Tip Baris Bash Berguna - Bagian 5
- « Cara menghapus baris dari file teks menggunakan perintah sed
- Benci/Tulis Kecepatan Benchmark Samsung SSD 850 Pro »