Belajar Cosort 3

1.      awk dan nawk
Untuk nawk bisa dibilang upgradenya awk, biasanya awk tidak bisa memproses field yang jumlahnya banyak.
Example:
ada data seperti ini (dengan nama test.txt)
A|2|3|4|5
G|2|E|D|F
F|D|Z|K|J
B|G|M|L|G
X|1|5|4|5
C|X|3|P|5

--Kita definisikan 1 record dibatasi oleh separator pipe "|".
% Kita ingin mengambil record yang field ke-2 nilainya = 2 , dengan awk/nawk bisa menggunakan perintah berikut:

ariefdolants@pangrango:~$awk -F"|" '{if($2==2){print $0}}' test.txt
A|2|3|4|5
G|2|E|D|F

Penjelasan :
option -F"|" ---> untuk mendefinisikan separator yang digunakan, tanda pipe
disesuaikan dengan kebutuhan
$0           ---> cetak semua field, jika nilainya $1,$3 dan $5 (print $1,$3,$5),
maka yang dicetak hanya field 1,3 dan 5.

% Kita ingin menambahkan satu field dibelakang, yang nilainya "20090101", perintahnya:

ariefdolants@pangrango:~$awk '{print $0"|20090101"}' test.txt
A|2|3|4|5|20090101
G|2|E|D|F|20090101
F|D|Z|K|J|20090101
B|G|M|L|G|20090101
X|1|5|4|5|20090101
C|X|3|P|5|20090101

% Kita ingin mereplace field ke 2 yang nilainya 2 dengan kata "TEST", commandnya
sebagai berikut:

ariefdolants@pangrango:~$ awk -F"|" '{OFS="|";if($2==2){print
$1"|TEST",$3,$4,$5}else{print $0}}' test.txt
A|TEST|3|4|5
G|TEST|E|D|F
F|D|Z|K|J
B|G|M|L|G
X|1|5|4|5
C|X|3|P|5

2. sed
Bisa digunakan untuk mereplace string tertentu di dalam file.
Example: masih menggunakan data yang sama.

% Kita ingin mereplace character X menjadi AABB, bisa menggunakan
ariefdolants@pangrango:~$ sed -e 's/X/AABB/g' test.txt
A|2|3|4|5
G|2|E|D|F
F|D|Z|K|J
B|G|M|L|G
AABB|1|5|4|5
C|AABB|3|P|5
----%%%d.

0 komentar:

Posting Komentar