bagian 3 - linux untuk pemula
6. Simple I/O
I/O merupakan hal yang mendasar dari kerja komputer karena
kapasitas inilah yang membuat komputer begitu berdayaguna. I/O yang dimaksud
adalah device yang menangani masukan dan keluaran, baik itu berupa keyboard,
floppy, layar monitor,dsb. sebenarnya kita telah menggunakan proses I/O ini
pada contoh -contoh diatas seperti statement echo yang menampilkan teks
atau informasi ke layar, atau operasi redirect ke ke file. selain echo, bash menyediakan perintah
builtin printf untuk mengalihkan keluaran ke output standard, baik ke layar
ataupun ke file dengan format tertentu, mirip statement printf kepunyaan bahasa C atau perl. berikut contohnya:
#!/bin/bash
#pr1
url="pemula.linux.or.id";
angka=32;
printf
"Hi, Pake printf ala C\n\t\a di bash\n";
printf
"My url %s\n %d decimal = %o octal\n" $url $angka $angka;
printf
"%d decimal dalam float = %.2f\n" $angka $angka
Hasilnya:
[fajar@linux$]./pr1
Hi, Pake
printf ala C
di bash
My url pemula.linux.or.id
32
decimal = 40 octal
32
decimal dalam float = 32.00
untuk
menggunakan format kontrol sertakan simbol %, bash akan mensubtitusikan format tsb
dengan isi variabel yang berada di posisi kanan sesuai dengan urutannya jika
lebih dari satu variabel, \n \t \a adalah karakter sekuen lepas newline,tab, dan bell,
Format control
|
keterangan
|
%d
|
untuk format data integer
|
%o
|
octal
|
%f
|
float atau decimal
|
%x
|
Hexadecimal
|
pada script diatas %.2f akan mencetak 2 angka dibelakang koma,
defaultnya 6 angka, informasi lebih lanjut dapat dilihat via man printf
Setelah echo dan printf untuk proses output telah anda ketahui, sekarang kita menggunakan
statement read yang cukup ampuh untuk membaca atau menerima masukan dari input
standar
syntax :
read -opsi
[nama_variabel...]
berikut contoh scriptnya:
#!/bin/bash
#rd1
echo -n
"Nama anda :"
read
nama;
echo "Hi $nama, apa khabarmu";
echo
"Pesan dan kesan :";
read
echo
"kata $nama, $REPLY";
Hasilnya:
[fajar@linux$]./rd1
Nama anda
: pinguin
Hi
pinguin, apa khabarmu
Pesan
& kesan :
pake linux pasti asyk -
asyk aja
kata
pinguin, pake linux pasti asyk - asyk aja
jika nama_variabel tidak disertakan, maka
data yang diinput akan disimpan di variabel REPLY contoh lain read menggunakan opsi
-t(TIMEOUT), -p (PROMPT), -s(SILENT), -n (NCHAR) dan -d(DELIM)
-t(TIMEOUT), -p (PROMPT), -s(SILENT), -n (NCHAR) dan -d(DELIM)
#!/bin/bash
read -p "User Name : " user
echo -e "Password 10 karakter,\njika dalam 6
second tidak dimasukkan pengisian password diakhiri"
read -s -n 10 -t 6 pass
echo
"kesan anda selama pake linux, _underscore=>selesai"
read -d _ kesan
echo
"User = $user"
echo
"Password = $pass"
echo
"Kesan selama pake linux = $kesan"
Hasilnya: silahkan
dicoba sendiri :-)
Opsi
|
Keterangan
|
-p
|
memungkinkan kita membuat prompt sebagai informasi pengisian
|
-s
|
membuat input yang dimasukkan tidak di echo ke layar (seperti
layaknya password di linux)
|
-n
|
menentukan banyak karakter yang diinput
|
-d
|
menentukan karakter pembatas masukan
|
informasi secara lengkap lihat man bash
6.3.1. Pengaturan Warna
Untuk pewarnaan tampilan dilayar anda dapat menggunakan konstanta
ANSI (salah satu badan nasional amerika yang mengurus standarisasi).
syntaxnya:
\033[warnam
Dimana:
m menandakan setting color
m menandakan setting color
contohnya:
[fajar@linux$]echo
-e "\033[31m HELLO\033[0m"
HELLO
konstanta 31m adalah warna merah dan 0m untuk mengembalikan ke warna normal (none),
tentunya konstanta warna ansi ini dapat dimasukkan ke variabel PS1 untuk mengatur tampilan prompt shell anda,
contohnya:
[fajar@linux$]PS1="\033[34m"
[fajar@linux$]
berikut daftar warna yang dapat anda gunakan:
foreground
None
0m
Black 0;30
Dark Gray 1;30
Red 0;31 Light Red 1;31
Green 0;32 Light Green 1;32
Brown 0;33 Yellow 1;33
Blue 0;34 Light Blue 1;34
Purple 0;35 Light Purple 1;35
Cyan 0;36 Light Cyan 1;36
Light
Gray 0;37 White 1;37
background
dimulai
dengan 40 untuk BLACK,41 RED,dst
lain-lain
4
underscore,5 blink, 7 inverse
tentunya untuk mendapatkan tampilan yang menarik anda dapat
menggabungkannya antara foreground dan background
[fajar@linux$]echo -e "\033[31;1;33m Bash and
ansi color\033[0m"
Bash and ansi color
|
sedangkan untuk penempatan posisi kursor, dapat digunakan salah
satu cara dibawah.
· Menentukan posisi baris dan kolom kursor:
·
\033[baris;kolomH
·
Pindahkan kursor keatas N baris:
·
\033[NA
·
Pindahkan kursor kebawah N baris:
·
\033[NB
·
Pindahkan kursor kedepan N kolom:
·
\033[NC
·
Pindahkan kursor kebelakang N kolom:
·
\033[ND
Contohnya:
#!/bin/bash
SETMYCOLOR="\033[42;1;37m"
GOTOYX="\033[6;35H"
clear
echo -e
"\033[3;20H INI DIBARIS 3, KOLOM 20"
echo -e
"\033[44;1;33;5m\033[5;35H HELLO\033[0m";
echo -e
"$SETMYCOLOR$GOTOYX ANDA LIHAT INI\033[0m"
Hasilnya: Silahkan dicoba sendiri
kita dapat pula mengatur penempatan posisi
kursor di layar dengan memanfaatkan utility tput,
syntaxnya:
tput cup
baris kolom
contohnya:
#!/bin/bash
clear
tput cup 5 10
echo
"HELLO"
tput cup 6 10
echo
"PAKE TPUT"
jika dijalankan anda akan mendapatkan string HELLO di koordinat
baris 5 kolom 10, dan string PAKE TPUT dibaris 6 kolom 10. informasi selengkapnya
tentang tput gunakan man tput, atau info tput
7. Seleksi dan Perulangan
Bagian ini merupakan ciri yang paling khas dari suatu bahasa
pemrograman dimana kita dapat mengeksekusi suatu pernyataan dengan kondisi
terntentu dan mengulang beberapa pernyataan dengan kode script yang cukup
singkat.
Comments
Post a Comment
thanks