PRAKTIKUM IV. Shell Developer Lokasi Keterangan Brian Fox dan Free Software. TCSH Berkeley California

dokumen-dokumen yang mirip
LABORATORIUM JARINGAN KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA PRAKTIKUM SISTEM OPERASI BAB V NIM :

I. Dasar Teori. Shell Programming

Praktikum Modul 6 Shell Programing

Shell dan Pemrograman Shell

TEORI. Gbr. Shell berhubungan langsung dengan kernel sistem operasi

PRAKTIKUM SISTEM OPERASI TEKNIK INFORMATIKA

BAB 1 PENGENALAN LINUX

Praktikum VI Shell Programming PRAKTIKUM VI

Praktikum 1. Perintah Dasar Sistem Operasi Linux

Praktikum 2. Operasi Linux. POKOK BAHASAN: Format Instruksi pada Sistem Operasi Linux Perintah-Perintah Dasar pda Sistem Operasi Linux

Praktikum 1 Berkenalan dengan awk

Pemrograman Bash Shell di Linux. agussalim

Praktikum 1. Perintah Dasar Sistem Operasi Linux. Format Instruksi pada Sistem Operasi Linux Perintah-Perintah Dasar pda Sistem Operasi Linux

Praktikum 3 Perintah DasarSistem Operasi Linux

Bab 6 Konfigurasi Bash Shell

DEPARTEMEN PENDIDIKAN NASIONAL BIRO PERENCANAAN DAN KERJASAMA LUAR NEGERI

Praktikum 6-A POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI: 1 SHELL SCRIPT. Pemrograman Shell

LAPORAN RESMI PRAKTIKUM SISTEM OPERASI MODUL I SHELL INTERAKTIF DAN SKRIP

1. Mengenal Profile 2. Mengerti konsep history 3. Membuat dan mengeksekusi shell script sederhana 4. Mengerti Job control

Shell Lanjutan. Praktikum 5 A. T U J U A N

Perintah Perintah Dasar Pada Sistem Operasi Linux

Pemrograman Shell Linux

Modul praktikum OS. MANUAL Linux menyediakan manual secara on-line. Beberapa kunci keyboard yang penting dalam menggunakan manual adalah : Q

BAB VI Variable, Escape & Pipe

BAB VIII SHELL (Pertemuan 10 dan 11)

P1 : Perintah Dasar Sistem Operasi Linux

Bab 3 Bash Shell. Program D3 PJJ PENS ITS. Sistem Operasi Linux PJJ PENS ITS. Arna Fariza

Praktikum Sistem Operasi (Pertemuan 03) Ekspansi Shell. Husni

Zaid Romegar Mair Lisensi Dokumen: Gambaran umum : Break statement

Praktikum 3. Shell Pengenalan Bash Penggunaan Baris Perintah dengan Cepat Lebih Lanjut Tentang Baris Perintah

Pemakaian Variabel. Praktikum 4 A. T U J U A N B. DASAR TEORI

DEPARTEMEN PENDIDIKAN NASIONAL BIRO PERENCANAAN DAN KERJASAMA LUAR NEGERI

MODUL 01 SISTEM OPERASI

Subrutin atau Fungsi. Praktikum 9 A. T U J U A N B. DASAR TEORI

Proses pada Sistem Operasi Linux Manajemen Proses pada Sistem Operasi Linux

Perintah Dasar Shell. Praktikum 1 A. T U J U A N B. DASAR TEORI. command), ataupun perintah eksekusi suatu file progam (eksternal command),

LAPORAN PRAKTIKUM SISTEM OPERASI MODUL II VARIABEL & KARAKTER ESCAPE

Pertemuan 1. Pengenalan Linux

Otomasi Shell Script Lanjut

shell. Kenapa Shell? User dapat mencoba unix mereka. Shell yang pertama kali dibuat adalah Bourne shell (sh).

I. DASAR TEORI. Perintah Dasar Linux

mengganti grup file chmod chown cp dd df du

Praktikum 2. Operasi Input Output

Modul Praktikum Sistem Operasi PERTEMUAN KE-VII

Laporan Sistem Operasi Kode Perintah Dasar Linux

Pemrograman Input/Output (I/O)

Paktikum1. Perintah Dasar Sistem Operasi Linux D3 TEKNIK INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SEBELAS MARET

Praktikum 3. Operasi Input Output

Pemrograman Shell (2)

PRAKTIKUM SISTEM OPERASI TEKNIK INFORMATIKA

Praktikum Sistem Operasi (Pertemuan 06) Pemrograman Shell. Husni

BAB 7 PENGENALAN SUN SOLARIS

Titin Winarti Diterbitkan oleh : Semarang University Press Semarang 2009

Praktikum 5. Proses dan Manajemen Proses 2 POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI: 1 KONSEP PROSES PADA SISTEM OPERASI LINUX

1. Mengenal konsep proses di Linux 2. Mengerti konsep sinyal dan bagaimana cara mengelola sinyal tersebut

Dalam Command Line Interface (CLI), kita masuk sebagai User. standart, yang tertulis hanyalah username dan hostname, contoh

VARIABEL. Variabel dibagi menjadi 3 kategori : 1. Environment Variable 2. Positional Parameter 3. User Define Variable

Mengontrol setting internal option shell. Me-load (mengambil) nilai parameter posisi pada shell.

Praktikum III Shell Programming PRAKTIKUM III

PERTEMUAN KE <JUDUL PERTEMUAN PRAKTIKUM>

Agus Setiawan

LAPORAN PRAKTIKUM SISTEM OPERASI PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

LAPORAN PRAKTIKUM I DAN II SISTEM OPERASI TENTANG MENGENAL PERINTAH DASAR LINUX UBUNTU

LAPORAN PRAKTIKUM SISTEM OPERASI

MODUL VII MANAJEMEN PROSES

Proses pada Sistem Operasi Linux Manajemen Proses pada Sistem Operasi Linux

PC/IX dikembangkan oleh Interactive System Corporation sebagai single User Unix

PROSES I/O Sebuah proses memerlukan Input dan Output. Input Proses Output

STRUKTUR PEMROGRAMAN PYTHON

File yang berisi koleksi program yang dapat dieksekusi

Masuk / Keluar Sistem UNIX

Perintah Dasar UNIX. Dibuat Oleh: Anindito Yoga Pratama, S.T., MMSI

1. Mengenal konsep proses di Linux 2. Mengerti konsep sinyal dan bagaimana cara mengelola sinyal tersebut

Pertemuan 5. Struktur Perulangan

1. Buatlah summary percbaan 1 sampai dengan percobaan 15 dalam bentuk tabel. Jawab : $ cal -y hostname

PEMROGRAMAN TERSTRUKTUR MENGGUNAKAN MATLAB

LAPORAN PRAKTIKUM SISTEM OPERASI

KATA PENGANTAR Dengan menyebut nama Allah STW yang Maha Pengasih dan Maha Penyayang, kita panjatkan puji dan syukur atas kehadirat-nya, yang telah mel

Praktikum 4. Standar Input Output dan Pipa POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI: 1 PROSES INPUT OUTPUT

Laporan Praktikum Modul 9 Sistem Operasi

PRAKTIKUM V. I. Judul Dasar Pemrograman Shell BASH (Fundamental II)

PHP mendukung komentar yang digunakan pada C, C++ dan Shell Unix. Sebagai contoh:

Objectives. Sekilas Linux. Distribusi Linux. Sejarah Linux. Three: Pengenalan Linux. The Challenger. Sekilas Linux -continued

Perulangan. Praktikum 7 A. T U J U A N B. DASAR TEORI

LAPORAN PRAKTIKUM SISTEM OPERASI. Perintah Dasar pada Linux

Modul 5 DASAR DASAR LINUX

LAPORAN PRAKTIKUM SISTEM OPERASI PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

LAB SISTEM OPERASI 1 AUGUST 29, Membuat direktori/folder.

PENGENALAN PROGRAM C++

LINUX SYSTEM ADMINISTRATOR (MOKHAMMAD RIFQI TSANI) EDITOR VI

Praktikum I Pengenalan Sistem Operasi Linux

Memahami operasi I/O pada Sistem Operasi Linux

ls = Melihat isi direktori #ls NamaFolder

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Semester 3 Perulangan for 4 X 50 menit

A. TUJUAN PEMBELAJARAN

AP2B Dini Triasanti STRUKTUR PEMROGRAMAN PYTHON

Praktikum Sistem Operasi Proses dan Manajemen Proses. Zaid Romegar Mair, ST., M.Cs

POSTEST SISTEM OPERASI. Disusun Oleh : : Nurul Annisa Putri. Nim : Jurusan/ Kelas : Teknik Informatika/ 4 (Empat) B

STRUKTUR UNIX. Struktur Unix Ada 2 PERANGKAT KERAS PERANGKAT LUNAK

Perintah Dasar Terminal GNU/Linux

Transkripsi:

PRAKTIKUM IV I. Judul Dasar Pemrograman Shell BASH II. Tujuan 1. Memahami teknik pemrograman Shell dalam sistem operasi Linux 2. Memahami jenis-jenis variabel dalam Shell 3. Mengetahui jenis-jenis metakarakter dalam Shell 4. Memahami bentuk pengabungan perintah Linux dalam program Shell 5. Memahami konsep Shell interaktif 6. Mengetahui environment Shell III. Dasar Teori 1. Shell Shell adalah program khusus yang bisa digunakan untuk berinteraksi dengan kernel. Kernel yang dimaksud adalah kernel sistem operasi yang sedang aktif. Shell merupakan salah satu dari sekian banyak bahasa pemrograman. Shell memiliki sebuah keunikan tersendiri, Karena berjalan disebuah platform Linux atau Unix, dan memiliki konsep perintah tingkat tinggi. Shell juga dikenal dengan bahasa command line processing ini karena sintak yang digunakan di dalam pemrograman shell merupakan perintah-perintah dasar dari Linux atau Unix. Selain itu juga sintak Shell dapat langsung dieksekusi langsung pada terminal console Linux atau Unix. Di dalam system operasi Linux atau Unix tipe-tipe shell sangat beragam. Berikut ini macam-macam nama shell dalam Linux. Shell Developer Lokasi Keterangan Brian Fox dan Free Software Chet Ramey Foundation BASH (Bourne-Again Shell) CSH (C Shell) KSH (Korn Shell) TCSH Bill Joy David Korn Universitas Berkeley California AT&T Labs Shell paling umum digunakan di semua system operasi Linux Shell yang Mengadopsi perintah pemrograman C Shell yang merupakan pengembangan UNIX C Shell Untuk melihat jenis Shell apa saja yang ada dalam sebuah system operasi Linux dapat dialkukan dengan menuliskan perintah berikut. $ls /etc/shells <enter> Copyright Ach Subhan KH 2007 1

1. Perintah ls /etc/shells digunakan untuk melihat jenis Shell apa saja yang terinstall dalam sistem operasi Linux yang digunakan. jika yang ada dalam direktori tersebut kurang dari daftar yang ada di table maka perlu ditambahkan dengan menginstall Shell yang diinginkan. Sedangkan untuk mengetahui jenis Shell apa yang sedang aktif saat ini, dapat digunakan perintah berikut. $ echo $shell <enter> 1. Perintah echo $shell digunakan untuk melihat jenis Shell yang sedang aktif saat ini. 2. Bekerja Dengan Shell Pada saat seorang user login di Linux, atau berada dalam sebuah terminal console Linux, pada saat itu juga di terminal console, user dapat menuliskan sebuah skrip Shell dan kemudian akan langsung dieksekusi. Konsep inilah yang kemudian dikenal dengan Command Line Processing. Command Line Processing dalam sebuah sistem pemrogram disebut juga dengan Shell interaktif. Ini merupakan salah satu cara bekerja dengan Shell. Selain itu juga skrip Shell dapat dituliskan ke dalam sebuah file dan kemudian dipanggil untuk dieksekusi, konsep ini disebut dengan program Shell. 2.1 Shell Interaktif Shell interaktif adalah skrip Shell yang langsung dijalankan pada terminal console Linux. Cara ini sebenarnya bisa memudahkan seorang user untuk mencoba apakah skrip Shell yang dimaksud telah ditulis dengan benar, dan keluaran yang dihasilkan juga telah sesuai dengan yang diinginkan. Hal lain lagi dari proses Shell interaktif ini kemungkinannya adalah bahwa user hanya membutuhkan proses yang sekali saja. Berikut ini contoh Shell interaktif dalam terminal consol Linux : $ echo $PATH enter /home/gsa12/bin:/usr/ucb:/usr/bin:/usr/local/bin:. 1. echo $PATH adalah perintah untuk menampilkan isi yang ada dalam variable yang bernama PATH. Variabel berisi daftar beberapa path yang dipisahkan dengan tanda :. Copyright Ach Subhan KH 2007 2

Contoh lain lagi dari Shell interaktif adalah : Tulis kode berikut ini langsung diterminal console case $- in *i*) echo inilah shell interaktif ;; *) echo ini juga shell interaktif ;; esac keluaran dari Shell interaktif tersebut adalah : ini shell interaktif 2.2 Program Shell Selain Shell interaktif skrip Shell juga bisa ditulis dalam sebuah file dan kemudian dieksekusi dengan cara memanggil file tersebut. File ini juga bisa dengan nama program Shell atau skrip Shell. Ditinjau dari hasil eksekusi tidak ada yang berbeda antara skrip Shell dengan Shell interaktif. Yang berbeda adalah cara penulisan dan eksekusi. Berikut ini contoh skrip Shell : Tulis skrip berikut dengan menggunakan editor VIM dengan nama coba. echo halo $LOGNAME, senang bertemu denganmu echo direktori anda saat ini `pwd` echo anda bekerja di mesin `uname a` kemudian setelah file disimpan dan keluar dari editor $ chmod 755 coba enter $./coba enter 1. echo perintah ini digunakan untuk menampilkan sebuah string. Dalam string tersebut mengandung variabel LOGNAME yang merupakan variabel environment yang berisi nama user yang login. 2. Baris kedua sama juga dengan perintah baris pertama, namun string yang ditampilkan mengandung hasil keluaran dari perintah PWD, dimana perintah PWD adalah untuk menampilkan direktori kerja saat ini. 3. Baris ketiga adalah menampilkan string yang mengandung hasil keluaran dari perintah uname n, dimana perintah ini berfungsi untuk menampilkan informasi tentang spesifikasi versi kernel. 4. chmod 755 adalah perintah di Linux untuk merubah tipe file menjadi file eksekusi. Copyright Ach Subhan KH 2007 3

5../coba adalah perintah untuk menjalankan skrip shell dengan memanggil nama file yaitu coba. 3. Variabel Variabel adalah tempat untuk menyimpan sebuah data. Seperti halnya bahasa pemrograman yang lain, Shell juga memiliki variabel. Ada dua jenis variabel dalam Shell yaitu variabel lokal dan variabel environtment. 3.1 Varibel Lokal Yang dimaksud dengan variabel lokal adalah variabel yang nilainya langsung diisikan. Tipe nilai dari variable ini bisa bermacam-macam, ada yang bertipe numerik dan ada juga yang bertipe karakter atau alphanumerik. Di dalam memberikan nama sebuah varibel, yang harus diperhatikan adalah nama variabel berupa karakter alphanumeric atau bisa juga diawali dengan karakater garisbawah(_), setelah itu baru bisa diikuti dengan jenis karakter yang lain. Contoh penamanaan variabel : Penamaan variabel yang salah 5nama 4_hasil \nilai Penamaan variabel yang benar Nama _hasil4 _nilai Dalam pemrograman Shell untuk mendefinisikan sebuah variabel tidak perlu diberikan bentuk atau jenis variabel tersebut, tidak seperti di pemrograman C atau Pascal dimana variabel yang akan dibuat perlu didefinisikan terlebih dahulu tipenya, Dan di dalam lingkup Shell tipe variabel hanya ada satu jenis yaitu tipe string. Contoh dalam penulisan variabel dan pemberian nilai dalam potongan program Shell sebagai berikut : ucapan=selamat hasil=dua awal= tidak ada echo $ucapan echo $hasil echo $awal 1. Baris pertama mendefinisikan variabel bernama ucapan dan memberikan nilai dari variabel sama dengan selamat. 2. Mendefinisikan variabel bernama hasil dengan nilai sama dengan dua. 3. Mendefinisikan variabel bernama awal dengan nilai sama dengan tidak ada. Untuk nilai variabel ini harus diberi tanda petik karena nilai yang diberikan mengandung karakter spasi. 4. Baris ke-4 menampilkan isi dari variabel yang bernama ucapan. 5. Baris ke-5 menampilkan isi dari variabel yang bernama hasil. Copyright Ach Subhan KH 2007 4

6. Baris ke-6 menampilkan isi dari variabel yang bernama awal. Pada potongan kode tersebut tampak ada penggunaan tanda $ sebelum nama variabel dituliskan. Tanda $ memiliki makna sebagai pengarah bahwa kata tersbut adalah sebuah variabel yang memiliki nilai. Contoh jika diinginkan sebuah variabel dengan nama tia dan nilainnya sama dengan halo maka dapat dituliska sebagai berikut : tia=halo Untuk mengakses isi dari variabel tia digunakan tanda $ sebagai pengarah, sehingga untuk menampilkan isi dari variabel tia dapat dituliskan : echo $tia Selain itu juga ada beberapa batasan dalam menuliskan variabel dan pemberian nilai variabel di dalam program Shell. Yang pertama adalah bahwa nilai sebuah variabel tidak boleh mengandung spasi, jika memang diperlukan maka dapat digunakan tanda petik untuk mendefinisikan nilai variabel. Contoh : tia=halo (penulisan yang benar) tia= halo (penulisan yang salah karena mengandung spasi) edi=satu dua (penulisan yang salah karena mengandung spasi) edi= satu dua (penulisan yang benar) Kedua adalah batasan mengenai penggunaan nilai variabel yang mengandung metakarakter. Metakarakter adalah satu karakter yang memiliki makna perintah dalam Shell. Sehingga jika dalam sebuah string terdapat metakarater maka akan diinterprentasikan sebagai sebuah perintah. Untuk lebih jelas mengenai metakarakter ada dalam bagian lain dari bab ini. 3.2 Variabel Environment Environment variabel adalah variabel yang merupakan bawaan dari Shell itu sendiri, biasanya variabel ini berisi nilai-nilai yang merupakan konfigurasi standar dalam lingkungan program Shell. Aturan penulisan dari environment variable adalah semua nama variabel menggunakan huruf kapital. lingkup dari variabel environment adalah bersifat GLOBAL. Artinya variabel environment berlaku untuk semua Shell yang ada. Contoh variabel environment adalah sebagai berikut : LOGNAME=shell14 (variabel yang berisi nama login) SHELL=/bin/bash (variabel yang berisi nama shell yang aktif) HOME=/home/shell14 (variabel yang berisi nama direktori user) USER=shell14 (variabel yang berisi nama user) Copyright Ach Subhan KH 2007 5

Untuk mengetahui variabel apa saja yang ada dalam kelompok environment variable dapat digunakan perintah berikut: $ env enter Merubah nilai variabel environment Untuk merubah nilai dari variabel environment dapat dilakukan dengan menggunakan perintah sebagai berikut : $ export LOGNAME=mrbee enter kemudian hasilnya dapat dilihat dengan menggunakan perintah : $ env grep LOGNAME Menghapus variabel environment Variabel environment juga bisa dihapus atau dihilangkan dari lingkungan daftar variabel environment dengan menggunakan perintah berikut : $ unset LOGNAME 3.3 Ruang Lingkup Variabel Dalam Shell Yang dimaksud dengan ruang lingkup adalah sejauh mana sebuah variabel yang didefinisikan berlaku bagi program shell dibuat. Dipemrograman lain seperti C ada variabel lokal yang hanya berlaku di dalam sebuah file skrip C, ada juga variabel global yang bisa berlaku bagi skrip C yang lain walaupun berada dalam file lainnya. Di program Shell lingkup dari sebuah variabel yang didefinisikan berlaku lokal. Lokal yang dimaksud adalah dalam suatu Shell saja. Jika dalam sebuah Shell dibuat lagi sub-shell maka variabel tersebut sudah tidak berlaku nilainya. Sedangkan variabel environment memiliki lingkup GLOBAL, yang dimaksud dengan global adalah semua variabel berlaku dan bernilai sama disemua file skrip Shell yang dibuat. Contoh variabel LOGNAME yang memiliki nilai nama login user, akan mempunya nilai yang sama walaupun diakses dari file skrip lainnya. 3.4 Parameter posisional Parameter posisional adalah sebuah nilai yang diberikan dimana nilai tersebut dianggap sebagai isi dari sebuah variabel dalam serangkaian argumen dari sebuah command line. Contoh berikut adalah gambaran dari definisi argumen : $ set bee ivo ant enter keterangan : 1. set merupakan sebuah perintah 2. bee adalah argumen ke 1. Copyright Ach Subhan KH 2007 6

3. ivo adalah argumen ke 2. 4. ant adalah argumen ke 3. BASH Shell memiliki beberapa simbol yang merupakan representasi dari posisi sebuah variabel dalam serangkaian argumen. Berikut ini simbol posisional parameter : Parameter posisional Arti $0 Nama skrip shell yang dijalankan $1-$9 Melambangan posisinal parameter 1 sampai 9 $# Melambangkan jumlah posisional parameter $* Melambangkan semua posisional parameter yg ada $@ Sama dengan $* terkecuali ada tanda $* Sama dengan S* berlaku didalam S@ Pada contoh kasus berikut : $ set bee ivo ant en enter $ echo $* enter bee ivo ant $ echo $1 enter bee $ echo $# enter 3 keterangan : 1. perintah set digunakan untuk memberikan nilai pada posisional parameter. 2. $* menyimpan nilai dari semua posisional variabel berturut-turut bee ivo ant 3. $1 menyimpan nilai dari posisional varabel ke-1 yaitu bee 4. $# menyimpan nilai jumlah posisional parameter yaitu sebanyak 3. 3.5 Varibel khusus Shell juga memiliki variabel khusus yang terdiri sebuah karakter tunggal. Karakter tunggal yang memiliki makna dalam lingkungan Shell tersebut adalah : Variabel Arti $ PID dari Shell - Option sh yang sedang aktif? Status exit value untuk perintah yang terakhir dijalankan! PID proses terakhir yang berjalan di background Copyright Ach Subhan KH 2007 7

Dengan adanya karakter tunggal yang merupakan variabel khusus ini user dapat memanfaatkan untuk mempersingkat penulisan. Contoh : $ echo PID dari shell ini adalah $$ enter PID dari shell ini adalah 212 1. Tanda $ pertama adalah pengarah pada sebuah variabel 2. Tanda $ kedua adalah variabel PID Shell. 4. Metakarakter Dalam Shell Metakarakter adalah sebuah karakter yang memiliki arti tertentu. Dalam Shell juga dikenal beberapa metakarakter. Karena metakarakter juga ada dalam Shel maka yang perlu diperhatikan adalah kesalahan dalam penanganan sebuah karakter. Dalam sebuah kasus mencetak sebuah strin di layar monitor, terkadang terjadi kasus dimana dari salah satu karakter dalam string tersebut merupakan metakarater. Karena mengandung metakarakter maka Shell akan menginterpretasikan string tersebut tidak seperti yang diharapkan. Contoh kasus : $ echo don t miss it enter > enter dont miss it 1. Tanda dinterpretasikan sebagai serangkaian string sehingga Shell akan menunggu sampai tanda berikutnya untuk berhenti dan kemudian menampilkannya. Jika maksudnya adalah untuk mencetak string don t miss it maka yang perlu diperhatikan adalah $ echo don\ t miss it enter don t miss it 1. \ merupakan karakter yang meloloskan interpretasi tanda yang merupakan metakarakter dalam Shell. 2. Karakter \ dikenal dengan istilah quoting dalam Shell Copyright Ach Subhan KH 2007 8

Berikut tabel daftar metakarakter yang ada dalam lingkungan Shell : Metakarakter Arti \ Literal, karakter berikutnya akan dimaknai sebagai karakter & Proses yang berjalan di background (DAEMON) ; Tanda pemisah antara dua buah perintah $ Karakter subtitusi variabel? Matching satu karakter [abc] Matching satu karakter dalam sekumpulan karakter [!abc] Matching satu karakter tidak dalam sekumpulan karakter * Matching 0 karakter atau lebih (perintah) Sekumpulan perintah yang dijalankan di sub-shell {perintah} Sekumpulan perintah yang dijalankan di Sheel saat itu > Pengarah output < Pengarah input Spasi Karakter spasi *[ ]? Metakarakter Shell untuk operasi manipulasi namafile tab Karakter tab 5. Quoting Quoting adalah mekanisme untuk melindungi metakarakter dari interpretasi sebagai sebuah simbol. Shell juga mempunya beberapa karakter yang difungsikan untuk melindungi metakarkater agar tetap diinterpretasikan sebagai karakter biasa. Ada tiga karakter quoting dalam Shell, yaitu : 1. Backslash ( \ ) 2. Petik tunggal ( ) 3. Petik ganda ( ) Contoh quoting dalam Shell : $ echo don\ t miss it don t miss it $ echo don t miss it don t miss it 1. Tanda \ menandakan katakter yang mengikuti bukan sebuah metakarakter 2. Pengunaan tanda petik double juga berfungsi melindungi interpretasi karakter sebagai metakarakter Copyright Ach Subhan KH 2007 9

IV. Percobaan Petunjuk Umum : 1. Buat direktori untuk masing-masing peserta praktikum dengan nama sesuai kelompok atau NRP peserta di user direktori masing-masing sesuai arahan dosen/instruktur lab. 2. Untuk semua percobaan lakukan di direktori masing-masing siswa sesuai arahan dari dosen/instruktur lab. 3. Format laporan sementara setiap percobaan terdiri dari : - Output/respon dari skrip - Error dan perbaikannya jika ada - Penjelasan singkat mengenai skrip (seperti keterangan pada bagian dasar teori). 4. Untuk Shell yang bersifat interaktif catat respon untuk masing-masing baris yang dieksekusi 5. Jika diperlukan bisa menjelaskan dengan bentuk flowchart 6. Bentuk penulisan data ditabelkan. 7. Untuk semua percobaan harap diperhatikan tanda-tanda berikut : Tanda $ diawal mengindikasikan skrip interaktif Tanda (shbang line) mengindikasikan skrip harus ditulis dalam sebuah file dan disimpan dengan nama percobaannya contoh nama percobaan_411. 8. Selamat berkerja 4.1 Shell interaktif Percobaan 411 $ echo halo enter Percobaan 412 $ if grep root /etc/passwd > then > echo disini ada user yang bernama root > else > echo user tersebut tidak ada > fi Percobaan 413 $ if grep root /etc/passwd; then echo disini ada root ; else echo tidak ada ; fi Percobaan 414 $ echo hari ini adalah `date` percobaan 415 $ echo saat ini tahun `date +%y` tanggal `date +%d` bulan `date +%m` Copyright Ach Subhan KH 2007 10

1. penjelasan %m, %d, %y, dll dapat di lihat di Linux dengan menggunakan perintah $ man date 4.2 Program Shell Tulis kode skrip shell untuk masing-masing percobaan dengan editor vim dan beri nama file, kemudian lakukan langkah untuk merubah file permission dan jalankan skripnya (baca petunjuk di dasar teori). Percobaan 421 echo selamat datang $USER echo di shell programming Percobaan 422 echo Shell yang digunakan adalah $SHELL echo saat ini jam `date +%T` echo tanggal `date +%D` Percobaan 423 echo hari ini tanggal `date +%d` bulan `date +%m` tahun `date +%y` echo hore aku bisa Percobaan 424 clear echo nama login anda $LOGNAME echo saat ini anda berada di direktori `pwd` echo waktu sekarang adalah `date +%T` echo selamat bekerja Percobaan 425 clear echo komputer anda telah menyala selama `uptime` echo jumlah user yang login sebanyak `who wc -l` user echo anda login dengan user $LOGNAME echo di shell $SHELL 4.3 Variabel Lokal Percobaan 431 $ nilai=80 $ hasil=bagus $ echo $nilai adalah nilai yang $hasil Copyright Ach Subhan KH 2007 11

Percobaan 432 $ kelas= telkom $ mata kuliah=shell $ _b987=shell programming $ echo $kelas $ echo $mata kuliah $ echo $_b987 Percobaan 433 clear nama=andi kelas= dua telkom A program_studi=telekomunikasi mata_kuliah= Shell programming echo nama : $andi echo kelas : $kelas echo program studi : $program_studi echo mata kuliah : $mata_kuliah Percobaan 434 clear nilai1=80 nilai2=90 echo $nilai1 + $nilai2 echo wah ternyata bukan angka tapi string Percobaan 435 clear data= date +%D jumlah=`who wc -l` echo tanggal $data ada $jumlah user yang login Percobaan 436 data=$(whoami) tgl=$(date +%D) echo $data login pada tanggal $tgl 4.4 Environment Variable Percobaan 441 $ env Dari respon sistem di layar monitor buat tabel dan catat isi dari variable berikut : LOGNAME USER SHELL HOME PWD Copyright Ach Subhan KH 2007 12

Percobaan 442 $ export USER=andi $ env Dengan menggunakan perintah pada percobaan 441 catat nilai dari variabel environment USER saat ini. Percobaan 443 $ unset USER Dengan menggunakan perintah pada percobaan 441 check variabel environment bernama USER. Percobaan 444 $export USER=alphine echo nama login anda $LOGNAME echo selamat datang $USER echo user direktorimu adalah $HOME echo anda berjalan di shell $SHELL echo direktori saat ini $PWD Percobaan 445 nama=aldo echo isi dari variabel nama adalah $nama nama=budi echo sekarang variabel nama berisi $nama Percobaan 446 $ set roni budi ali $ echo $* $ echo $1 $ echo $3 $ echo S# Percobaan 447 Tulis skrip berikut ini dan simpan dengan nama percobaan_447 echo nama dari skrip ini adalah $0 echo variabel pertama isinya $1 echo variabel posisi kedua berisi $2 echo $3 adalah isi dari varibel pada posis ke 3 echo jumlah semua variabel adalah sebanyak $# Jalankan skrip dengan perintah : $./percobaan_447 andi ali dian Copyright Ach Subhan KH 2007 13

4.5 Metakarakter dan Quoting Percobaan 451 $ echo hari ini hari jum at (catat respon perintah tsb) $ echo hari ini hari jum\`at (catat respon perintah tsb) $ echo hari ini hari jum at (catat respon perintah tsb) Percobaan 452 echo ~ echo direktori anda ~ echo direktori anda ~ Percobaan 453 $ echo apa isi percobaan_45? $ echo apa isi percobaan_45\? Percobaan 454 user=andi echo hai $user i m glad to meet you echo hai $user i\ m glad to meet you echo apakah kamu punya teman special? echo \ special\?? teman apa itu? echo ya pokoknya special V. Tugas 1. Berikan analisa hasil percobaan beserta penjelasan yang lebih detail mengenai masing-masing percobaan dalam laporan resmi. Copyright Ach Subhan KH 2007 14