SEKOLAHTINGGITEKNIKPLN
2.memunculkanbaris1kolom1karakter14
3.memunculkankolom3baris1dan2
4.memunculkankolom2baris1dan2
5.memunculkankolom3baris3
AP AITUSHELLSCRIPT Dalam lingkungan unix, kata 'shell' mengacu pada semua programyangdapat dialankan pada command line. Jadi secara sederhana shell j scriptmerupakan kumpulan perintah yang disimpan pada suatu file. Extensi umumyangdigunakan untukshellscriptadalah'.sh',sebenarnyahalinitidak mutlakkarena padadasarnyaunixmengabaikanextensifile. Shelljugadapatmengacupadaprogramyangmenanganicommand lineitu sendiri dalam sistem operasi UNIX program tersebut adalah BourneShell (1 7 Steve Bourne) disingkat sh. Dalam sistem operasi 98 GNU/Linuxshellyang menjadi standar adalah Bourne Again Shell(bash). Bash merupakanshellyang kompatibeldenganshdanmemilikilebihbanyakfitur . Jikaandainginmenguasaishellscripttentuandaharustahu danhafal sedikitbanyakperintahdasarcommandline,sepertimengkopi file(cp), merename file(mv), mencetak string (echo), melihat file(cat),danbeberapa perintahdasarlainnya. Shellscriptjugamenyediakanbeberapafituryangtersedia padabahasa pemrogramantingkattinggisepertivariabel,percabangandan perulangan. Berikutiniadalahcontohsederhanapenggunakanshellscript : lug@stikom.edu:~$nanohello.sh #!/bin/sh echo'HELLOWORLD' Untuk menjalankan ada dua cara, pertama melalui program shellitusendiri lug@stikom.edu:~$shhello.sh Kedua adalah mengeksekusinya secara independen, untuk melakukanhaltersebut
Perangkat Lunak Jaringan
andaharusmemberiper mission'execute'padafile. lug@stikom.edu:~$chmod+xhello.sh lug@stikom.edu:~$./hello.sh HELLOWORLD Barispertama#!/bin/shadalahMUTLAKdiperlukandanHARUS diletakkanpada BARIS PERTAMA agar file yang anda buat dikenali sistem sebagaishellscript. T anda'#!'seringdisebut'shebang'operator T . andatersebut menandakan bahwa file tersebut adalah shell script. Sisanya misal '/bin/sh'adalah lokasi file binari atau program. Dalam contoh kita menggunakanprogram bash'/bin/sh'atau'/bin/bash'. T anda#jikatidakterletakpadabarisdankolompalingawal akandianggap sebagaikomentarolehshell.
V ariabel Pemberian variabel pada shell script bersifat 'dynamic typing'karena shell script tidak mengenal adanya tipe data. P ada shell scriptdikenal dua istilah variabel yaitu SY STEM VARIABLE(SV) dan USER DEFINEDVARIABLE (UDV).SVadalahkumpulanvariabelyangtelahdideklarasikan secaraotomatis oleh shell, sedangkan UDV adalah variabel yang kita buat sendiri.Contohdari variabelSVadalahHOME,SHELL,RANDOM,OSTYPE,danmasih banyakyanglain. Dalam membuat variabel ada beberapa aturan yang harus dipenuhiagarvariabel tersebutdianggapvalidolehshell,syntaxuntukpenamaan variabeladalah: nama_variabel=NILAI Perhatikanbahwatidakadaspasiantaranama_variabeldengan tanda'='juga dengan NILAI. Ini adalah suatu KEHARUSAN Berikut adalah . beberapaaturan tentangpenamaanvariabel: 1 ariabelHARUSdiawaliABJADatau_(tidakdapatdiawali .V angka)
Perangkat Lunak Jaringan
2.V ariabeldapatterdiridarikarakteralphanumericdan_ 3.V ariabelbersifatCaSeSeNsItIvE 4.Jikaisivariabelmengandungspasisebaiknyaapitdengan tandapetik(') atau("). 5.Gunakanescapecharacter(\)untukkarakternonliteral seperti(\',\$,\?,dll) Untuk mencetak nilai dari suatu variabel digunakan tanda dollar($)didepan namavariabel,contoh: lug@stikom.edu:~$a='Hello' lug@stikom.edu:~$b='World!' lug@stikom.edu:~$echo$a$b HelloWorld! lug@stikom.edu:~$echo${a}${b} HelloWorld! Cara yang terakhir adalah cara yang disarankan untuk menghindarikesalahan dalammelakukanconcatstring. Jikaandainginmenyimpanoutputdarisuatuperintahkedalam suatuvariabel gunakantandabacktick(`).Contoh,kitaakanmelihatisi direktorihome lalumenyimpannyadalamvariabelisi_home.
Perangkat Lunak Jaringan
lug@stikom.edu:~$isi_home=`ls/home` lug@stikom.ecu:~$echo$isi_home DalamsheljugaterdapatSPECIALVARIABELuntukmendapatkan exitstatusdari suatuprogram.P adaUNIXsetiapprogramdinyatakanselesai TANP Aerror apabila exit statusnya SAMA DENGAN 0. Selain itu maka programtersebut selesaitapidenganerror V . ariabeltersebutadalah"$?". lug@stikom.edu:~$ls/home lug@stikom.edu:~$echo$? 0 lug@stikom.edu:~$ls/file/ngawur lug@stikom.edu:~$echo$? 2 Angka2(TIDAKSAMADENGAN0)menunjukkanbahwaprogramls keluardengan status terjadi error Penggunaan exit sangat penting saat . kitamembuat shell script yang kompleks, dimana didalamnya kita banyak menggunakan programlain.
Pemrograman script pun dapat menggunakan parameter agar pemrograman script dapat lebih dinamis dan otomatis. Apa itu parameter?P arameteradalahnilaiyangkitaberikansaatprogram akandialankan.Contoh: j ls l => ls adalah perintah, sedangkan l adalah parameter catnamafile=>catadalahperintah,sedangkannamafileadalah parameter P arameter ini akan disimpan dalam variabel $1 ..$n, dimana $1 artinya parameter pertama, $2 artinya parameter kedua, $n artinya parameter ken, dst. Bila parameter yang dimasukkan mengandung spasi, maka parameter tersebut harus diberi tanda (kutip). Contohpenggunaanparameterdalampemrogramanscript : #/bin/sh # NamaScript : luaspersegi # $1 parameter untuk panjang # $2 parameter untuk lebar # $3 parameter untuk nama user echo Hallo $3, Kita akan menghitung luas persegi panjang echo Masukkan Panjang $1 echo Masukkan Lebar $2 luas=`expr $1 \* $2` echo Luas persegi panjang dengan panjang $1 dan lebar $2 tersebutadalah$luas Scriptdiatasdapatdialankandenganperintahberikut j : ./luaspersegi 5 6 Sirius Black
maka, hasilnya adalah: HalloSiriusBlack,Kitaakanmenghitungluaspersegipanjang Masukkan Panjang 7 Masukkan Lebar 6 Luas persegi panjang dengan panjang 7 dan lebar 6 tersebut adalah42 Berikutadalahbeberapavariabelkhususyangberhubungandengan parameter : 1 $0:berisinamafilescripttersebut. . 2.$1 ..$n:berisiparameterpertamasampaidenganken 3.$#:berisijumlahparameteryangdiberikan 4.$@: berisi seluruh parameter (menggabungkan parameter $1 ..$n) 5.$?:selainsebagaihasildarioperatorpembandingandan logikal, variabel khusus ini juga merupakan exit status pelaksanaanperintah.
Perangkat Lunak Jaringan