3. Shell
Tempat interaksi antara pengguna dan Linux
Penerjemah atau Pengeksekusi Program
(Interpreter, Executor)
Antarmuka teks (command line)
Banyak digunakan untuk administrasi sistem
dan mengelola file
Hanya ada di sistem Unix (Linux). Windows tak
punya tool canggih seperti di Linux
Ditandai oleh prompt $ (user) atau # (root)
4. Menggunakan Shell
Interaktif
Satu atau lebih perintah shell diketik langsung
pada prompt
Hasil eksekusi ditampilkan langsung setelah
(atau saat) eksekusi perintah
Menulis skrip (shell scripting)
Pengguna menulis beberapa baris kode
(program, skrip)
File skrip dieksekusi
9. Redirection
date > sekarang.txt
cat sekarang.txt
date >> sekarang.txt
cat sekarang.txt
10. Menulis Skrip Shell
Tulis skrip menggunakan suatu Text Editor.
Simpan sebagai file teks biasa, ekstensi .sh
Ubah agar file skrip .sh tersebut bersifat
executable:
Baris pertama harus: #!/bin/bash
Ubah agar exeutable: chmod +x nama_file.sh
Eksekusi file skrip:
. /nama_file.sh
11. Skrip Pertama: 01.sh
Tulis 2 baris skrip berikut:
#!/bin/bash
echo "Halo, Saya belajar pemrograman shell
Bash Linux."
Simpan sebagai skrip01.sh
Pada shell prompt, ketik:
chmod +x skrip01.sh
. /skrip01.sh
15. Contoh05 : secho.sh
#!/bin/sh
# Nama file skrip: kedua.sh
# Apa yang dihasilkan skrip ini?
echo "Halo dunia " # Halo dunia
echo "Halo dunia "
echo "Halo * dunia”; echo Halo * dunia
echo Halo dunia; echo "Halo" dunia
echo Halo " " dunia; echo "Halo "*" dunia "
echo `halo` dunia; echo 'hello' dunia
16. Variabel
Tidak dideklarasikan
Tidak ada tipe data
Tanpa spasi sebelum dan setelah ”=”
Case sensitive
A=10;
Nama=”Nama anda”;
nama = siapa anda
22. Karakter Escape
Bagaimana menampilkan Halo dunia?
Bagaimana menampilkan Halo ”dunia”
$ echo "Halo dunia"
$ echo "Halo "dunia""
$ echo "A quote is ", backslash
is , backtick is `."
$ echo "A few spaces are ; dollar
is $. $X is ${X}."
35. Perbandingan
#!/bin/bash
NUM1=2
NUM2=1
if [ $NUM1 -eq $NUM2 ]; then
echo "Both Values are equal"
elif [ $NUM1 -gt $NUM2 ]; then
echo "NUM1 is greater then NUM2"
else
echo "NUM2 is greater then NUM1"
fi
37. Fungsi
/bin/bash
function function_B { echo Function B. }
function function_A { echo $1 }
function function_D { echo Function D. }
function function_C { echo $1 }
38. Memanggil Fungsi
# Lewatkan parameter ke fungsi A
function_A "Function A."
function_B
# Lewatkan parameter ke fungsi C
function_C "Function C."
function_D
40. #simple case bash structure
case $case in
1) echo "Anda memilih bash";;
2) echo "Anda memilih perl";;
3) echo "Anda memilih phyton";;
4) echo "Anda memilih c++";;
5) exit
esac