Download - BATAN SED

Transcript
  • ntuk mengedit suatu naskah diplatform Linux, sudah tersedia puluhaneditor yang dapat Anda gunakan. Namun, jika yang Anda butuhkanhanyalah suatu utiliti kecil dengan kemampuanreget yang baik, utilitiseperti Sed dapat menjadi pilihan yang tepat.

    Sed (Stream EDitor) merupakanutiliti di Linux yang dapat melaku-kan penyuntingan dengan modenoninteraktif. Hampir sama dengancara kerja editor yang mengizinkanpengeditan meldui script seperti edi-tor ed atau emacs, Sed dapat bekerjadengan hanya menggunakan satuinput sehingga bersifat lebih efisien.Sed juga memiliki kemampuan un-tuk memfilter teks dalam pipelinesehingga membedakan Sed denganeditor yang lain.

    Utilitas sed bekerja secara selrue-nsial mernbaca zuatu file, baris per-baris, dan menlmpan pekerjaan se-mentara ke dalammemory. Hasilyangdiperoletr oleh Sed, akan ditampilkanperbaris ke tampilan layar. Jika meng-inginkan hasil yang diperoleh tersim-pan ke dalam sebuahfile, Anda tinggatmereilirecthastlyang diperoleh untukdisimpan ke suatu file.

    Beragam option di $edSecara default, utiliti Sed memilikioption sebagai berikut:,r,.!ffi

    Instruksi yang terdapat pada Seddigunakan untuk memerintahkanSed agar melakukan operasi sepertimenampilkan, menyunting, ataumenghapus. Sed juga memiliki se-junlah option. Beberapa di antaran-ya adalah:

    a\ : Menimpa pada satu atau lebihbaris pada baris yang diproses.

    c\ : Mengganti teks pada baris yangdiproses dengan baris baru.

    d : Menghapvs pattern space daribaris baru.

    D: Menghapus baris pertama padapattern space.

    i\: Menyisipkan teks di bawahbaris yang diproses.

    n : Menrbacabarisinputselanjubryadan baris yang aktif dikeluarkanke standar output, kemudianmemutar proses pada baris barudengan perintah selanjuhrya.

    p : Mencetak baris pada patternspace.

    P : Mencetak baris pertama pada. pattern space.

    s/stringl/string2 : Mengganti ekspre-si regular stringldengan string2.

    Mencetak nomor baris yang di-proses.

    Flag subtitusi:Angka 1-n untuk mengindikasi-kan bahwa penggantian hanyadilakuhan pada perintah ke-n.Untuk foengubah semua yangada pada pattern space.Untuk mencetak baris pada pat-tern space.

    file: Untuk mencetak baris kelu-'aran ke sebuah fiIe.

    x : Untuk mengganti isi pada pat-tern space.

    y/src/dest: Untuk mengganti tekspada source dengan tekspada d,estination.

    -eperintah:Digunakan untukmelakukan multiple ed-iting. -e selalu diikutioleh perintah editing.

    -f : Mengawali nama file script Sedyang akan digunakan untukmengisi perintah Sed.

    Untuh mengetahui option lengkapyang terdapat pada Sed, Anda dapatmenggunakan perintah info sed,.

    Penggunaan $edSetelah mengenal berbagai sintaksdan berbagai macam option yangterdapat pada Sed, berikut ini akandibahas beberapa contoh umumpenggunaan sed.

    o Mengganti suatu kata. Salah satupenggunaan utilitas Sed yang pal-

    . ingseringdigunakanadalahuntukmencari danmengganti suatu katake kata lainnya. Untukmelakukanhal ini, sintaks yang biasa digu-nakan dalam Sed adalah sebagaiberikut:

    Sebagai contoh di sini, kata AS

    64 03/2008 r INF0L|NUX www.infolinux.web.id

  • I$r0E[$T#ffit&L

    a

    ROMA pada string yang diberikanakan diganti dengan kata Juven-tus.

    i echo Pavel Nedved adalah

    pemain A.s ROMA I sed 's/AS ROl,tAl

    Juventus/'

    Pavel Nedved adalah pemain

    Juventus

    Mengganti suatu kata dalam filedan simpan ke file lain. Sekarangkita akan mencoba melakukanperintah diatas terhadap file yangmengandung string diatas. Keti-kan string "Pavel Nedved adalahpemain AS ROMA", dan sooe de-ngan nama file sedl.txt.

    S ectto "Pavel Nedved adalahpemain AS ROMA" > sedl.txg

    $ ca t sed1. tx tPavel Nedved adalah pemain AS

    ROMA

    Lakukan pencarian kata ASROMA pada file sed1.txt, danubah menjadi kata Juventus.

    $ sed '6 lA5 RoMA/ . luventus / , sed1.EXE

    Pavel Nedved adalah pemain

    Juventus

    Simpan output yang dihasilkan kedalam file sed2.txt.

    $ sed 's/AS RoMA/,Juventus/, sed1.txt > sed2. t.xt

    $ ca t sed2. tx tPavel Nedved adalah pemain

    ,fuventus

    Melakukan beberapa penguba-han kata sekaligus. Selain dapatmelakukan proses seorch dan re-place terhadap satu kata, Andajuga dapat melakukan beberapaproses search dan replace kata yangterdapat pada suatu string. Untukmelakukan hal ini, Anda dapatmenggunakan option -e pada Sed.Di bawah ini, kita akan melaku-kan penggantian pada dua kata.Pertama kata AS ROMA menjadiJuventus, dan kata Pavel NedvedmenjaCi Alesandro Del Piero.

    S echo "Pavel Nedved adalah

    pemain AS ROMA" I sed -e 's/

    AS RoMA/,tuventus/' -e 's/Pavel

    Nedved,/Alesildro DeI Pierol'

    Alesandro Del Pi.ero adalah pemain

    Juventus

    Selain menggunakan option -e diSed untuk melakukan beberapapenggantian kata, Anda juga dapatmenggunakan tanda koma yangmemisahkan tiap option s di Sed.

    $ echo "Pavel Nedved adalahpemain AS ROMA" I sed 's/AS

    ROMA/,fuventus/ ; s/Pavel Nedved,/

    Alesandro Del Piero/'Alesandro

    DeI Piero adalah pemain Juventus

    Alesandro De1 Piero adalah Demain

    ,Juventus

    Melakukan pengubahan kata se-cara menyeluruh. Semua optionsed yang telah dicontohkan sebe-lumnya tidak bersifat menyeluruh.Untuk jelasnya, ketikkan contohberikut:

    $ echo Rapat redaksi telahdilakukan hari Kamis ini- dan hari

    Kamis sebe l .u roya I sed ' s /Kan is /

    ,tumat/'

    Rapat redaksi teLah dilakukan

    a

    a

    g'{ts?:rniiFgEorly BlrdRp. I 50.000s.d. H-4

    Rp 200.000H-3

    AhtEanlut l oRomi Sa t r i a Wahono(llmukomputer.com){ l ' Drs . Rusmanto , MM(Pemred Infol lNUX)1 r ' H . P r i h a n t o o s a , S S i , M M S i(Ketua Edubuntu Indonesia)t t D r s . M g s . H e n d r i T h o y i b , M M(Ketua lT Club)

    @auAiz

    Seminar kitSertifikatCD EdubuntuMuslim Edit ionLunch

    i:5 ) LP3T-NF DEPOKJl. Marqonda Rava No.5228 (02T) 7874213,7874224 Fax. (021) 7874225

    ffir LPST-NF JAKSEL

    Jl. Mampang Prapatan )V4E (021) 7(Y7115,7975235 Fax (021) 7901205

    . Fakultas uAlKomp. Masjid Agung AlAzharJl. Sisingamangaraja - Kebayoran BaruJakarta Selatan 12110E (021) 72792753,7274456 Fax (021) 7244767

    LP3T-NF

  • gAJTilffiIAL $E[i u p r l y a n t o @ s e r v e r l : - / t e t t l 7 = 1 t d i l e { ( 1 < = r 0 ) } ; d o t o u c h t e s t 5 1 t x t; 1e t r+ :1 ; do f rsupr ryanto@tervr l r - l te t tS ls1 e 5 t 1 0 t r t t e s t 2 t x t t e 5 t 4 t r t t e 5 t 6 t r t t e s t 8 t x tl e s t l t x t t s t 3 t x t t e s t 5 t x t t e s t T t x t t e 5 t 9 t r te u p r r y a n t q t t e r v e r l : - / t e ! t t t s t e s t r t t t I a i k { p r i n r { ' m v t 1 " 9 1 )l l s e d s / t e s t / c o b a / 2 1 / b r n / s hs u p r r y 6 n t o @ r e r v e r l : - / t e s t 9 l saobd lo tx t coba2 tx t coba4 tx t coba6 tx t cobaS tx lrobat t i t cobaS tx t coba5 tx t cobaT t r t coba9 tx ts u p r r y a n t o s e r Y r l i - l t e ! l $

    itengubah rocan roknil nama filc dalam $atr lireffori-

    hari Jumat ini dan hari l(amisr s u c r u ' r u r Y d

    Terlihat di output, kalau peruba-han kata Kamis menjadi Jumathanya terjadi pada satu kata saja.Untuk mengubah semua kata Ka-mis yang terdapat pada string,tambahkan option g di Sed.

    S echo Rapat redaj