SlideShare a Scribd company logo
1 of 40
Download to read offline
Workshop Labsi
Pemrograman Shell Linux
Husni
husni@if.trunojoyo.ac.id
husni.trunojoyo.ac.id
Garis Besar
 Shell Linux
 Pemrograman Shell
 Contoh-contoh
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)
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
Interaktif
 date; whoami; pwd
 ps
 top
 ls -la
 echo ”Kereeeen”
 a=10; echo $a
 b=109; echo "B bernilai :" $b
Manual Perintah Shell
 Gunakan ”man”
 man ls
 man ps
 man file
 Bagaimana mencari file dengan ekstensi
tertentu? Misalnya *.jpg?
 find . -name '*.jpg'
 file nama_file
 cat nama_file
 more nama_file
 grep keren nama_file
 man grep

Pipeline
 Echo ”aris joko faza fenny ubaid”
 Echo ”aris joko faza fenny ubaid” | tr ” ” ”n”
 Echo ”aris joko faza fenny ubaid” | tr ” ” ”n” |
sort
 Echo ”aris joko faza fenny ubaid” | tr ” ” ”n”
| sort -r
Redirection
 date > sekarang.txt
 cat sekarang.txt
 date >> sekarang.txt
 cat sekarang.txt
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
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
Contoh 02: 02.sh
#!/bin/bash
a=5.66
b=8.67
c=`echo $a + $b | bc`
echo "$a + $b = $c"
Contoh 03: 03.sh
#!/bin/bash
echo "Halo, $LOGNAME"
echo "Tanggal sekarang `date`"
echo "Pengguna: `who i am`"
echo "Direktori aktif `pwd`"
Contoh 04: dir.sh
#!/bin/bash
echo ”Daftar file Anda: ”;
ls -l
echo ”Thank U very Much”;
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
Variabel
 Tidak dideklarasikan
 Tidak ada tipe data
 Tanpa spasi sebelum dan setelah ”=”
 Case sensitive
 A=10;
 Nama=”Nama anda”;
 nama = siapa anda
Contoh06: var1.sh
#!/bin/sh
# Nama file skrip: var1.sh
MY_MESSAGE="Halo dunia"
echo $MY_MESSAGE
Contoh07: var2.sh
#!/bin/sh
# Nama file skrip: var2.sh
echo Siapa anda?
read MY_NAME
echo "Hello $MY_NAME - hope you're well."
Contoh08: var3.sh
#!/bin/sh
echo "MYVAR is: $MYVAR"
MYVAR="hi there"
echo "MYVAR is: $MYVAR"
$ MYVAR=hello
$ export MYVAR
$ ./var3.sh
Contoh09: var4.sh
#!/bin/sh
echo "Siapa nama anda?"
read USER_NAME
echo "Halooo $USER_NAME"
echo "Buat file bernama $USER_NAME_file"
touch $USER_NAME_file
#!/bin/sh
echo "Siapa nama anda?"
read USER_NAME
echo "Halooo $USER_NAME"
echo "Buat file bernama ${USER_NAME}_file"
touch ${USER_NAME}_file
echo "Test 1 2 3" >> "${USER_NAME}_file"
cat "${USER_NAME}_file"
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}."
Perulangan (Looping)
 for do done
 while
 until
Contoh10: loop1.sh
#!/bin/bash
for i in 1 2 3 4 5
do
echo "Welcome $i times"
done
 for i in 1 2 3 4 5 dapat diganti for i in {1..5}
Contoh11: loop2.sh
#!/bin/bash
echo "Bash version ${BASH_VERSION}..."
for i in {0..10..2}
do
echo "Welcome $i times"
done
Bentuk 3 Ekspresi
#!/bin/bash
for (( c=1; c<=5; c++ ))
do
echo "Welcome $c times..."
done
Infinite Loop
#!/bin/bash
for (( ; ; ))
do
echo "infinite loops [ hit CTRL+C to stop]"
done
Looping: While
#!/bin/bash
x=1
while [ $x -le 5 ]
do
echo "Welcome $x times"
x=$(( $x + 1 ))
done
Looping: while
#!/bin/bash
COUNT=6
# bash while loop
while [ $COUNT -gt 0 ]; do
echo Value of count is: $COUNT
let COUNT=COUNT-1
done
Faktorial
#!/bin/bash
counter=$1
factorial=1
while [ $counter -gt 0 ]
do
factorial=$(( $factorial * $counter ))
counter=$(( $counter - 1 ))
done
echo $factorial
Looping: Until
#!/bin/bash
COUNT=0
until [ $COUNT -gt 5 ]; do
echo Value of count is: $COUNT
let COUNT=COUNT+1
done
Array
#!/bin/bash
ARRAY=( 'Debian Linux' 'Redhat Linux' Ubuntu Linux )
# ambil jumlah elemen array
ELEMENTS=${#ARRAY[@]}
for (( i=0;i<$ELEMENTS;i++)); do
echo ${ARRAY[${i}]}
done
Test: if
#!/bin/bash
directory="./BashScripting"
# cek direktori, atau atau tidak
if [ -d $directory ]; then
echo "Directory exists"
else
echo "Directory does not exists"
fi
Perbandingan
#!/bin/bash
NUM1=2
NUM2=2
if [ $NUM1 -eq $NUM2 ]; then
echo "Both Values are equal"
else
echo "Values are NOT equal"
fi
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
Fungsi
function name(){
Commands
}
---- atau ----
name(){
Commands
return $TRUE
}
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 }
Memanggil Fungsi
# Lewatkan parameter ke fungsi A
function_A "Function A."
function_B
# Lewatkan parameter ke fungsi C
function_C "Function C."
function_D
Case
#!/bin/bash
echo "Apa bahasa favorit Anda?"
echo "1) bash"
echo "2) perl"
echo "3) phyton"
echo "4) c++"
echo "5) Mene ketehe !"
read case;
#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

More Related Content

What's hot

Fhs
FhsFhs
Fhskrtk
 
Os2013 lap3-rizqitohopi
Os2013 lap3-rizqitohopiOs2013 lap3-rizqitohopi
Os2013 lap3-rizqitohopirizqitohopi
 
Tugas so(sistem operasi)
Tugas so(sistem operasi)Tugas so(sistem operasi)
Tugas so(sistem operasi)bebekbebek
 
Perintah dasar linux
Perintah dasar linuxPerintah dasar linux
Perintah dasar linuxkrtk
 
Working Instruction Instalation Sinkronisasi Direktori LSYNCD
Working Instruction Instalation Sinkronisasi Direktori LSYNCDWorking Instruction Instalation Sinkronisasi Direktori LSYNCD
Working Instruction Instalation Sinkronisasi Direktori LSYNCDFebi Gelar Ramadhan
 
L4 sharing fadlysatriyagunawan
L4 sharing fadlysatriyagunawanL4 sharing fadlysatriyagunawan
L4 sharing fadlysatriyagunawanSMKN 1 Cimahi
 
Bahan materi laravel
Bahan materi laravelBahan materi laravel
Bahan materi laravelMira Yila
 
Konfigurasi samba server pada debian 7
Konfigurasi samba server pada debian 7Konfigurasi samba server pada debian 7
Konfigurasi samba server pada debian 7CyberSpace
 
Pengenalan perintah terminal pada linux
Pengenalan perintah terminal pada linuxPengenalan perintah terminal pada linux
Pengenalan perintah terminal pada linuxIrsal Shabirin
 
Perintah dasar sistem operasi linux
Perintah dasar sistem operasi linuxPerintah dasar sistem operasi linux
Perintah dasar sistem operasi linuxboyhokage
 
Praktikum Sistem Operasi Linux
Praktikum Sistem Operasi LinuxPraktikum Sistem Operasi Linux
Praktikum Sistem Operasi LinuxMirza Afrizal
 
Instalasi Mail Server & Webmail
Instalasi Mail Server & WebmailInstalasi Mail Server & Webmail
Instalasi Mail Server & WebmailJulio Mukhlishin
 
Perintah Dasar Linux
Perintah Dasar LinuxPerintah Dasar Linux
Perintah Dasar LinuxAllwy
 

What's hot (20)

Fhs
FhsFhs
Fhs
 
Perintah dasar linux
Perintah dasar linuxPerintah dasar linux
Perintah dasar linux
 
Pertemuan7
Pertemuan7Pertemuan7
Pertemuan7
 
Os2013 lap3-rizqitohopi
Os2013 lap3-rizqitohopiOs2013 lap3-rizqitohopi
Os2013 lap3-rizqitohopi
 
Os2013 lap6-ridwan
Os2013 lap6-ridwanOs2013 lap6-ridwan
Os2013 lap6-ridwan
 
L I N U X
L I N U XL I N U X
L I N U X
 
Tugas so(sistem operasi)
Tugas so(sistem operasi)Tugas so(sistem operasi)
Tugas so(sistem operasi)
 
Perintah dasar linux
Perintah dasar linuxPerintah dasar linux
Perintah dasar linux
 
Prak sh6
Prak sh6Prak sh6
Prak sh6
 
Working Instruction Instalation Sinkronisasi Direktori LSYNCD
Working Instruction Instalation Sinkronisasi Direktori LSYNCDWorking Instruction Instalation Sinkronisasi Direktori LSYNCD
Working Instruction Instalation Sinkronisasi Direktori LSYNCD
 
L4 sharing fadlysatriyagunawan
L4 sharing fadlysatriyagunawanL4 sharing fadlysatriyagunawan
L4 sharing fadlysatriyagunawan
 
Bahan materi laravel
Bahan materi laravelBahan materi laravel
Bahan materi laravel
 
Materi 2
Materi 2Materi 2
Materi 2
 
Konfigurasi samba server pada debian 7
Konfigurasi samba server pada debian 7Konfigurasi samba server pada debian 7
Konfigurasi samba server pada debian 7
 
Pengenalan perintah terminal pada linux
Pengenalan perintah terminal pada linuxPengenalan perintah terminal pada linux
Pengenalan perintah terminal pada linux
 
Perintah dasar sistem operasi linux
Perintah dasar sistem operasi linuxPerintah dasar sistem operasi linux
Perintah dasar sistem operasi linux
 
Praktikum Sistem Operasi Linux
Praktikum Sistem Operasi LinuxPraktikum Sistem Operasi Linux
Praktikum Sistem Operasi Linux
 
Fhsmega
FhsmegaFhsmega
Fhsmega
 
Instalasi Mail Server & Webmail
Instalasi Mail Server & WebmailInstalasi Mail Server & Webmail
Instalasi Mail Server & Webmail
 
Perintah Dasar Linux
Perintah Dasar LinuxPerintah Dasar Linux
Perintah Dasar Linux
 

Viewers also liked

дом завдання
дом завданнядом завдання
дом завданняMlyudochka
 
Bhawani singh rathore cmba4 1420 marketing report
Bhawani singh rathore cmba4  1420 marketing reportBhawani singh rathore cmba4  1420 marketing report
Bhawani singh rathore cmba4 1420 marketing reportBhawani Singh Rathore
 
Learn to Write ur first Shell script
Learn to Write ur first Shell scriptLearn to Write ur first Shell script
Learn to Write ur first Shell scriptHanan Nmr
 
Introduction to c_language
Introduction to c_languageIntroduction to c_language
Introduction to c_languageWay2itech
 
A brief introduction to C Language
A brief introduction to C LanguageA brief introduction to C Language
A brief introduction to C LanguageMohamed Elsayed
 
Tabel alokasi frekuensi indonesia
Tabel alokasi frekuensi indonesiaTabel alokasi frekuensi indonesia
Tabel alokasi frekuensi indonesiaMuhamad Fahrudin
 
Storage devices
Storage devicesStorage devices
Storage devicesPradeepRaj
 
Портфоліо вчителя біології та хімії
Портфоліо вчителя біології та хіміїПортфоліо вчителя біології та хімії
Портфоліо вчителя біології та хіміїОксана Гулька
 
History Of Linux
History Of LinuxHistory Of Linux
History Of Linuxanand09
 
Compiler Design Introduction
Compiler Design IntroductionCompiler Design Introduction
Compiler Design IntroductionRicha Sharma
 

Viewers also liked (17)

FokusFirmpromoedited
FokusFirmpromoeditedFokusFirmpromoedited
FokusFirmpromoedited
 
Final Final Final
Final Final FinalFinal Final Final
Final Final Final
 
Framework codeigniter 2
Framework codeigniter 2Framework codeigniter 2
Framework codeigniter 2
 
Trion Towers Semi Furnish Unit
Trion Towers Semi Furnish UnitTrion Towers Semi Furnish Unit
Trion Towers Semi Furnish Unit
 
дом завдання
дом завданнядом завдання
дом завдання
 
Bhawani singh rathore cmba4 1420 marketing report
Bhawani singh rathore cmba4  1420 marketing reportBhawani singh rathore cmba4  1420 marketing report
Bhawani singh rathore cmba4 1420 marketing report
 
Learn to Write ur first Shell script
Learn to Write ur first Shell scriptLearn to Write ur first Shell script
Learn to Write ur first Shell script
 
Introduction to c_language
Introduction to c_languageIntroduction to c_language
Introduction to c_language
 
Strings & arrays
Strings & arraysStrings & arrays
Strings & arrays
 
A brief introduction to C Language
A brief introduction to C LanguageA brief introduction to C Language
A brief introduction to C Language
 
Tabel alokasi frekuensi indonesia
Tabel alokasi frekuensi indonesiaTabel alokasi frekuensi indonesia
Tabel alokasi frekuensi indonesia
 
Storage devices
Storage devicesStorage devices
Storage devices
 
ppt on power supplies by prince kumar kusshwaha(RJIT)
ppt on power supplies by prince kumar kusshwaha(RJIT)ppt on power supplies by prince kumar kusshwaha(RJIT)
ppt on power supplies by prince kumar kusshwaha(RJIT)
 
Портфоліо вчителя біології та хімії
Портфоліо вчителя біології та хіміїПортфоліо вчителя біології та хімії
Портфоліо вчителя біології та хімії
 
Basic 50 linus command
Basic 50 linus commandBasic 50 linus command
Basic 50 linus command
 
History Of Linux
History Of LinuxHistory Of Linux
History Of Linux
 
Compiler Design Introduction
Compiler Design IntroductionCompiler Design Introduction
Compiler Design Introduction
 

Similar to Pemrograman shell2

Modul praktikum-so-2013
Modul praktikum-so-2013Modul praktikum-so-2013
Modul praktikum-so-2013Tri Atsumori
 
Lapres so d_modul1_yuka
Lapres so d_modul1_yukaLapres so d_modul1_yuka
Lapres so d_modul1_yukaYuka Arjaka
 
Meeting 8-practice5 a-working with bash shell-b-modul
Meeting 8-practice5 a-working with bash shell-b-modulMeeting 8-practice5 a-working with bash shell-b-modul
Meeting 8-practice5 a-working with bash shell-b-modulSyaiful Ahdan
 
Lapres so d_modul5_yuka
Lapres so d_modul5_yukaLapres so d_modul5_yuka
Lapres so d_modul5_yukaYuka Arjaka
 
Laporan Praktikum Web dengan PHP
Laporan Praktikum Web dengan PHPLaporan Praktikum Web dengan PHP
Laporan Praktikum Web dengan PHPOkta Riveranda
 
Slide web programming ii
Slide web programming iiSlide web programming ii
Slide web programming iiIlman Kadori
 
Bab 5 linux shell
Bab 5 linux shellBab 5 linux shell
Bab 5 linux shellAde Tamin
 
Mod -3_-_so_-_2013-2014
Mod  -3_-_so_-_2013-2014Mod  -3_-_so_-_2013-2014
Mod -3_-_so_-_2013-2014day_aftercoma
 
Lapres so d_modul2_yuka
Lapres so d_modul2_yukaLapres so d_modul2_yuka
Lapres so d_modul2_yukaYuka Arjaka
 
Pertemuan2 basic commands linux operating system-handout
Pertemuan2 basic commands linux operating system-handoutPertemuan2 basic commands linux operating system-handout
Pertemuan2 basic commands linux operating system-handoutSyaiful Ahdan
 
20150927 lab2 basiccommandlinux
20150927 lab2 basiccommandlinux20150927 lab2 basiccommandlinux
20150927 lab2 basiccommandlinuxWahyu W
 
10 pemrograman internet php (2)
10 pemrograman internet   php (2)10 pemrograman internet   php (2)
10 pemrograman internet php (2)Toni Tegar Sahidi
 
1.exploring linux command
1.exploring linux  command1.exploring linux  command
1.exploring linux commandArif Wahyudi
 
Modul praktikum sistem operasi
Modul praktikum sistem operasiModul praktikum sistem operasi
Modul praktikum sistem operasiHidayatullah Aldy
 

Similar to Pemrograman shell2 (20)

Modul praktikum-so-2013
Modul praktikum-so-2013Modul praktikum-so-2013
Modul praktikum-so-2013
 
Lapres so d_modul1_yuka
Lapres so d_modul1_yukaLapres so d_modul1_yuka
Lapres so d_modul1_yuka
 
Meeting 8-practice5 a-working with bash shell-b-modul
Meeting 8-practice5 a-working with bash shell-b-modulMeeting 8-practice5 a-working with bash shell-b-modul
Meeting 8-practice5 a-working with bash shell-b-modul
 
Lapres so d_modul5_yuka
Lapres so d_modul5_yukaLapres so d_modul5_yuka
Lapres so d_modul5_yuka
 
Laporan Praktikum Web dengan PHP
Laporan Praktikum Web dengan PHPLaporan Praktikum Web dengan PHP
Laporan Praktikum Web dengan PHP
 
Slide web programming ii
Slide web programming iiSlide web programming ii
Slide web programming ii
 
Bab 5 linux shell
Bab 5 linux shellBab 5 linux shell
Bab 5 linux shell
 
10012333 tugas1 db_web
10012333 tugas1 db_web10012333 tugas1 db_web
10012333 tugas1 db_web
 
Mod -3_-_so_-_2013-2014
Mod  -3_-_so_-_2013-2014Mod  -3_-_so_-_2013-2014
Mod -3_-_so_-_2013-2014
 
Lapres so d_modul2_yuka
Lapres so d_modul2_yukaLapres so d_modul2_yuka
Lapres so d_modul2_yuka
 
Bab 5 linux shell
Bab 5 linux shellBab 5 linux shell
Bab 5 linux shell
 
Pertemuan2 basic commands linux operating system-handout
Pertemuan2 basic commands linux operating system-handoutPertemuan2 basic commands linux operating system-handout
Pertemuan2 basic commands linux operating system-handout
 
20150927 lab2 basiccommandlinux
20150927 lab2 basiccommandlinux20150927 lab2 basiccommandlinux
20150927 lab2 basiccommandlinux
 
10 pemrograman internet php (2)
10 pemrograman internet   php (2)10 pemrograman internet   php (2)
10 pemrograman internet php (2)
 
Dasar PHP
Dasar PHPDasar PHP
Dasar PHP
 
Manajemen file
Manajemen fileManajemen file
Manajemen file
 
1.exploring linux command
1.exploring linux  command1.exploring linux  command
1.exploring linux command
 
Pengenalan PHP
Pengenalan PHPPengenalan PHP
Pengenalan PHP
 
Php mysql
Php mysqlPhp mysql
Php mysql
 
Modul praktikum sistem operasi
Modul praktikum sistem operasiModul praktikum sistem operasi
Modul praktikum sistem operasi
 

Pemrograman shell2