Operasi Input Output Linux
Operasi Input Output Linux
Ditulis oleh :
II. TUJUAN
Setelah mempelajari materi dalam babini, mahasiswa diharapkan mampu:
- Memahami konsep proses I/O dan redirection
- Memahami standar input, output dan error
- Menggunakan notasi output, append dan here document
- Memahami konsep PIPE dan filter
III. PERALATAN
- PC
- OS Linux
3. Pembelokan (Redirection)
Pembelokan dilakukan untuk standard input, output dan error, yaitu
untuk mengalihkan file descriptor dari 0, 1 dan 2. Simbol untuk
pembelokan adalah :
0< atau < pengganti standard input
1> atau > pengganti standard output
2>
4. Pipa (pipeline)
Mekanisme pipa digunakan sebagai alat komunikasi antar proses.
Input Proses1 Output = Input Proses2 Output
Proses 1 menghasilkan output yang selanjutnya digunakan sebagai input
oleh Proses 2. Hubungan output input ini dinamakan pipa, yang
menghubungkan Proses 1 dengan Proses2 dan dinyatakan dengan
symbol “|”.
Proses1 | Proses2
5. Filter
Filter adalah utilitas Linux yang dapat memproses standard input
(dari keyboard) dan menampilkan hasilnya pada standard output (layar).
Contoh filter adalah cat, sort, grep, pr, head, tail, paste dan lainnya.
Pada sebuah rangkaian pipa :
P1 | P2 | P3 ....... | Pn-1 | Pn
Maka P2 sampai dengan Pn-1 mutlak harus utilitas Linux yang
berfungsi sebagai filter. P1 (awal) dan Pn (terakhir) boleh tidak filter.
Utilitas yang bukan filter misalnya who, ls, ps, lp, lpr, mail dan lainnya.
Beberapa perintah Linux yang digunakan untuk proses penyaring
Anantara lain :
- Perintah grep
Digunakan untuk menyaring masukannya dan menampilkan baris-baris
yang hanya mengandung pola yang ditentukan. Pola ini disebutregular
expression.
·
- Perintah wc
Digunakan untuk menghitung jumlah baris, kata dan karakter dari baris-
baris masukan yang diberikan kepadanya. Untuk mengetahui berapa
baris gunakan option – l, untuk mengetahui berapa kata, gunakan option
–w dan untuk mengetahui berapa karakter, gunakan option –c. Jika salah
satu option tidak digunakan, maka tampilannya adalah jumlah baris,
jumlah kata dan jumlah karakter.
- Perintah sort
Digunakan untuk mengurutkan masukannya berdasarkan urutan
nomor ASCII dari karakter.
- Perintah cut
Digunakan untuk mengambil kolom tertentu dari baris-baris
masukannya, yang ditentukan pada option –c.
- Perintah uniq
Digunakan untuk menghilangkan baris-baris berurutan yang
mengalami duplikasi, biasanya digabungkan dalam pipeline dengan
sort.
V. TUGAS PENDAHULUAN
Jawablah pertanyaan-pertanyaan di bawah ini :
1. Apa yang dimaksud redirection ?
2. Apa yang dimaksud pipeline ?
3. Apa yang dimaksud perintah di bawah ini :
echo, cat, more, sort, grep, wc, cut, uniq
VI. PERCOBAAN
1. Login sebagai user.
2. Bukalah Console Terminal dan lakukan percobaan-percobaan di
bawah ini. Perhatikan hasil setiap percobaan.
3. Selesaikan soal-soal latihan.
Ok!
++
$ cat <<%%%
Hallo, apa kabar ?
Baik-baik saja ?
Ok!
%%%
8. Notasi – (input keyboard) adalah representan input dari keyboard.
Artinya menampilkan file 1, kemudian menampilkan input dari
keyboard dan menampilkan file 2. Perhatikan bahwa notasi “-“ berarti
menyelipkan input dari keyboard
$ cat myfile.txt – surat
9.untuk membelokkan standart output ke file, digunakan operator>
$ echo hello
$echo hello > output
$ cat output
10.untuk menambahkan output ke file digunakan operator >>
$ echo bye >> output
$ cat output
11.untuk membelokkan standart input digunakan operator
<$ cat < output
12.pembelokkan standart input dan standart output dapat
dikombinasikan tetapi tidak boleh menggunakan nama file yang sama
sebagai standart input dan output.
$ cat < output > out
$ cat out
$ cat <output >> out
$ cat out
$ cat <output > output
$ cat output
$ cat < out >> out (proses tidak berhenti)
[Ctrl-c]
$ cat out
Percobaan 3 : Pipa (pipeline)
1. Operator pipa (|) digunakan untuk membuat eksekusi proses dengan
melewati data langsung ke data lainnya.
$ who
$ who | sort
$ who | sort –r
$ who >tmp
$ sort tmp
$ rmtmp
$ ls –l /etc | more
$ ls –l /etc | sort | more
Percobaan4 : Filter
2. Pipa juga digunakan untuk mengkombinasikan utilitas system untuk
membentuk fungsi yang lebih kompleks
$ w –h | grep <user>
$ grep <user> /etc/passwd
$ ls /etc | wc
$ ls /etc | wc –l
$ cat > kelas1.txt
Badu
Zulkifli
Yulizir
Yudi
Ade
[Ctrl-d]
$ cat > kelas2.txt
Budi
Gama
Asep
Muchlis
[Ctrl-d]
$ cat kelas1.txt kelas2.txt | sort
$ cat kelas1.txt kelas2.txt > kelas.txt $ cat
kelas.txt | sort | uniq
VII. DATA HASIL PERCOBAAN
Percobaan 1
1. Output ke layar (Standar Output), input dari sistem (Kernel)
3. Input nama direktori, output tidak ada (membuat direktori baru), bila
terjadi error maka tampilan error pada layar (standard error)
Percobaan 2
1. Pembelokan Standar Output
2. Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi
dari file.
5. Notasi 1 >& 2
6. notasi >> (append)
12. Pembelokan standar input dan standar output dapat dikombinasikan tapi
tidak boleh menggunakan nama file yang sama sebagai standar input dan
output.
Percobaan 3
Menggunakan manual
1. Operator pipa (|) digunakan untuk membuat eksekusi proses dengan
melewati data langsung ke data lainnya.
Percobaan 4
1. Pipa juga digunakan untuk mengkombinasikan utilitas sistem untuk
membentuk fungsi yang lebih kompleks
VIII. ANALISA
• Percobaan pertama yaitu file descriptor.
- Perintah pertama adalah ps yaitu output ke layar (standar output),
input dari sistem(kernel). Dan akan menampilkan output standard
dari perintah ps tersebut yang terdiri dari PID, TTY, TIME, dan
CMD.
- Perintah berikutnya, cat yang digunakan untuk output keluar, input
dari keyboard. Dengan perintah ini kita bisa memasukkan pesan
melalui keyboard. Lalu perintah berikutnya adalah mail
arna@eepis- its.edu yang digunakan untuk input dari keyboard dan
output ke alamat internet. Disini, seprti mengirimkan email dengan
terlebih dahulu menuliskan subject.
- Lalu perintah berikutnya adalah mkdir mydir digunakan untuk
input nama direktori. Hasilnya adalah terdapat pesan eror (standart
error).
• Percobaan kedua adalah pembelokan.
- Perintah pertama adalah pembelokan standart output dengan
perintah cat1>myfile.txt digunakan untuk membuat seuah file, lalu
dilanjut dengan mengetik isi file lalu di tutup dengan (ctrl+d), lalu
file akan tersimpan dengan nama myfile.txt.
- Perintah berikutnya adalah cat 0<myfile.txt digunakan untuk
melihat atau menampilkan isi file, jadi akan muncul isi dari
myfile.txt.
- Lalu perintah berikutnya adalah mkdir mydir dan akan muncul
pesan error seperti tadi.
- Perintah berikutnya adalah mkdir mydir 2 > myerrror.txt
digunakan untuk membuat sebuah file yang berisikan pesan error
karena membuat direktori dengan nama yang sama.
- Lalu akan ditampilkan isi file myerror.txt dengan perintah cat
myerror.txt.
- Perintah berikutnya adalah ls filebaru dan akan muncul pesan eror
karna direktori filebaru belum ada.
- Lalu perintah berikutnya adalah ls filebaru 2>out.txt digunakan
untuk membuat file yang berisi pesan error karena melihat direktori
yang tidak tersedia.
- Perintah berikutnya cat out.txt digunakan untuk menampilkan file
out.txt.
- Perintah selanjutnya adalah ls filebaru 2>out.txt 2>&1 akan
muncul pesan eror karena direktori filebaru belum ada dan disini
tidak akan membuat file baru karena terjadi pembelokkan.
- Perintah berikutnya adalah echo “mencoba menulis file” > 1 baru
digunakan untuk membuat file yang berisi teks tersebut dan nama
file nya adalah “baru”.
- Perintah berikutnya adalah cat filebaru 2> baru 1>&2 digunakan
untuk menyipan pesan error ke file baru. Perintah berikutnya cat
baru akan tampil isi file, namun disini eror karena direktori filebaru
belum ada.
- Perintah berikutnya adalah notas jadi misalkan kita menulis echo
“kata pertama” > surat maka kita akan menulis “kata pertama”
pada file surat dan seterusnya. Ketika perintah cat surat maka akan
muncul isi dari file surat.
- Perintah berikutnya adalah cat <<++ digunakan untuk pembatas
input dari keyboard.
- Perintah berikutnya cat myfile.txt – surat menampilkan isi dari 2
file sekaligus.
- Perintah berikutnya echo hello maka akan muncul kata “ hello”, lalu
echo hello> output. Maka kata “hello” dimasukkan pada file output.
Maka bisa kita lihat isi dari output dengan perintah cat output.
- Perintah echo bye >> output menambahkan kata “bye” pada file
output.
- Perintah berikutnya adalah cat < output digunakan untuk
menampilkan isi dari output.
- Perintah berikutnya adalah cat <output > out digunakan untuk
membuat file baru yaitu out dengan isinya dari file output.
• Percobaan ketiga adalah pipeline.
- Perintah pertama who untuk melihat nama user yang login. Perintah
berikutnya who | sort digunakan untuk melihat nama yag sedang
aktif dan urut file teks.
- Perintah berikutnya adalah who | sort -r untuk menampilkan
informasi user login.
- Perintah who > tmp untuk menyimpan info who pada sebuah file
yang diberi nama tmp.
- Untuk perintah sort tmp untuk melihat isi file tmp.
- Rm tmp untuk menghapus file tmp.
- Ls -l/etc|more untuk melihat direktori lengkap.
- Perintah ls-l/etc|sort|more untuk melihat dan mengurutkan isi
direktori.
• Percobaan keempat adalah filter.
- Perintah w -h |g grep <user> tampil eror dan berfungsi untuk
mencari kata pada user.
- Perintah grep <user>/etc/passwd terjadi pesan eror digunakan
untuk mencai kata yang sama dengan user pada direktori etc/passwd.
- Perintah ls/etc|wc untuk menghitung jumlah kata jumlah baris yang
di direktori /etc.
- Perintah cat > kelas kelas1.txt untuk menampilkan isi file
kelas1.txt.
- Untuk perintah cat kelas1.txt kelas2.txt | sort untuk menampilkan
dan gabungkan 2 file dan mengurutkan sesuai abjad.
- Perintah cat kelas1.txt kelas2.txt >kelas.txt digunakan untuk
membuat file baru dengan isinya dari 2 file tersebut.
- Cat kelas.txt sort|uniq untuk menampilkan isi file dan
mengurutkan berdasarkan abjad.
IX. KESIMPULAN
Berdasarkan percobaan dan analisa data yang telah dilakukan maka dapat
disimpulkan bahwa pada notasi 2>&1 identik dengan file descriptor 1
(standar ouput) sedangakan pada notasi 1>&2 identik dengan file
descriptor 2 (standar input). Kemudian pada pembelokkan (redirection) standar
input maupun output dapat dibelokkan ke sebuah file yang lain. Selain itu, ketika
kita menambahkan output ke file dengan operator >, maka output baru akan
mereplace isi file sebelumnya apabila filenya kosong.
Lampiran Tugas