SHELL DASAR
Kenapa Shell ? User dapat ‘mencoba’ unix mereka. Shell yang pertama kali dibuat adalah Bourne shell (sh).
Jenis-jenis shell – Bourne shell (sh) – C shell (csh) – Korn shell (ksh) – Bourne Again shell (bash) Secara default dalam Linux menggunakan bash shell.
Tabel 1. Panduan untuk mengetahui jenis Shell
Shell /bin/csh atau /usr/bin/csh /bin/sh /bin/rsh /bin/jsh /bin/ksh /bin/rksh
Jenis C shell Bourne shell (bash) Restricted Bourne Shell Bourne shell termasuk jobs control Korn shell Restricted Korn shell
SHELL (Bash Command) Program yang membaca input standar (keyboard) Program (penterjemah perintah) yang menjembatani user dengan sistem operasi Memeriksa sintak dari instruksi yang diberikan Mengeksekusi perintah Ditandai dengan prompt $ untuk user, # untuk super user Perintah Shell Perintah internal shell (internal command) Perintah eksekusi suatu file progam (eksternal command) Contoh : ketika kita ketik ls pada shell dan ls merupakan program yang dapat dieksekusi maka shell akan menjalankan program tersebut.
Format Perintah/Instruksi $ NamaInstruksi [pilihan] [argumen] Pilihan (option) dimulai dengan tanda – (minus). Argumen dapat kosong, satu atau beberapa argumen (parameter). Contoh : $ ls $ ls $ ls $ ls $ ls $ ls
tanpa option dan argumen –a option adalah –a = all, tanpa argumen /bin tanpa option, argumen adalah /bin /bin /etc /usr ada 3 argumen –l /usr 1 option dan 1 argumen, l = long list –la /bin /etc 2 option –l dan –a dan 2 argumen
Struktur Promt [username@hostname pwd]$ username = nama user hostname = nama host (default-nya localhost) pwd = direktori sekarang/aktif (letak kursor berada) $ = sebagai user Code Segment # Example Code Segment echo “Hello World” echo “The time is [`date +%h%m%s%p`] by my clock”
Screen Output user@system$ my_script argument Hello World The time is [12:37:42pm] by my clock Command Line
Shell merupakan command-line intepreter artinya untuk melakukan apapun harus dengan mengetikkan baris perintah.
cat *.log | sort -u > filename
Profil Pada saat login, beberapa program dijalankan yaitu : 1. /etc/profile : berisi file script untuk user linux 2. Profil untuk setiap pemakai Pada home direktori, login pertama kali akan memeriksa file .bash_profile bila tidak ada, maka file .bash_login ,bila tidak ada dicari file .profile 3. .bashrc : untuk perpindahan dari satu shell ke shell yang lain, Instruksi SU 4. .bash_logout : dieksekusi pada saat logout
History Diadaptsi dari C-shell Catatan dari semua instruksi yang telah dilakukan Dapat dipilih kembali, diedit dan dieksekusi Navigasi history : ^P (Ctrl-P) melihat instruksi sebelumnya ^N (Ctrl-N) melihat instruksi berikutnya !! eksekusi kembali instruksi sebelumnya !! -3 instruksi sebelumnya akan diulang !!88 ulangi instruksi no 88
Bash Script
• File yang berisi koleksi program yang dapat dieksekusi • Mengeksekusi bash script dengan . (dot) • Tanda ./ berarti file bash script berada pada direktori actual Job Control • eksekusi program yang diberikan pada kernel • sebuah job selesai, bila eksekusi program berakhir • eksekusi job = eksekusi program Contoh shell (Bash) Script
#!/bin/bash while true do sleep 10 echo “Hallo” done
Pipeline – tanda berupa vertical bar ( | ) – hasil keluaran suatu proses program diberikan sebagai input pada proses lain. Contoh : Sebelum menggunakan pipeline $ find * dead.letter mbox test Setelah menggunakan pipeline $ find * | grep test test $ Pada contoh diatas output perintah find menjadi input dari perintah grep yang kemudian hanya mengambil kata “test” dari output find.
Regular Expression Cara untuk menentukan sebuah pola karakter untuk pencarian dan pemfilteran.
Karakter . * ^ $ \< \> [] [^] \
Arti Cocok dgn sembarang satu karakter Cocok dgn sembarang lebih dari satu karakter Cocok dengan awal baris Cocok dengan akhir baris Cocok dengan awal kata Cocok dengan akhir kata Cocok dgn salah satu karakter yg terdapat di dalam kurung siku Cocok dgn salah satu karakter yg tidak terdapat pada kurung siku Karakter selanjutnya dianggap literal
Redirection
– Symbol > (membelokkan standar output ke file) – Symbol < (membelokkan standar input dari file) – Output Redirecion (menyimpan output dari sebuah proses ke file) – Input Redirection (menggunakan isi dari file sbg input dalam suatu proses) – Komponen redirection : < , > , << , >>