LAPORAN PRAKTIKUM SISTEM OPERASI Judul: OPERASI INPUT OUTPUT DISUSUN OLEH Helena Nooraini M0516026 PROGRAM STUDI INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SEBELAS MARET 2017 BAB I PENDAHULUAN 1.1. Tujuan Praktikum a. Memahami konsep proses I/O dan redirection b. Memahami standar input, output dan error c. Menggunakan notasi output, append dan here document d. Memahami konsep PIPE dan filter 1.2. Landasan Teori 1. Proses I/O Sebuah proses memerlukan Input dan Output. Instruksi (command) yang diberikan pada Linux melalui Shell disebut sebagai eksekusi program yang selanjutnya disebut proses. Setiap kali instruksi diberikan, maka Linux kernel akan menciptakan sebuah proses dengan memberikan nomor PID (Process Identity). Proses dalam Linux selalu membutuhkan Input dan menghasilkan suatu Output. Dalam konteks Linux input/output adalah : Keyboard (input) Layar (output) Files Struktur data kernel Peralatan I/O lainnya (misalnya Network) 2. File Descriptor Linux berkomunikasi dengan file melalui file descriptor yang direpresentasikan melalui angka yang dimulai dari 0, 1, 2 dan seterusnya. Tiga buah file descriptor standar yang lalu diciptakan oleh proses adalah : 0 = keyboard (standar input) 1 = layar (standar output) 2 = layar (standar error) Linux tidak membedakan antara peralatan hardware dan file, Linux memanipulasi peralatan hardware sama dengan file. 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 menghubngkan 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 penyaringan antara lain : Perintah grep Digunakan untuk menyaring masukannya dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular 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. Percobaan 1 : File Descriptor 1. Output ke layar (standar output), input dari system (kernel) $ ps 2. Output ke layar (standar output), input dari keyboard (standard input) $ cat hallo, apa khabar hallo, apa khabar exit dengan ^d exit dengan ^d [Ctrl-d] 3. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error maka tampilan error pada layar (standard error) $ mkdir mydir $ mkdir mydir (Terdapat pesan error) Percobaan 2 : Pembelokan (redirection) 1. Pembelokan standar output $ cat 1> myfile.txt Ini adalah teks yang saya simpan Ke file myfile.txt 2. Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi dari file $ cat 0< myfile.txt $ cat myfile.txt 3. Pembelokan standar error untuk disimpan di file $ mkdir mydir (Terdapat pesan error) $ mkdir mydir 2> myerror.txt $ cat myerror.txt 4. Notasi 2>&1 : pembelokan standar error (2>) adalah identik dengan file descriptor 1. $ ls filebaru (Terdapat pesan error) $ ls filebaru 2> out.txt $ cat out.txt $ ls filebaru 2> out.txt 2>&1 $ cat out.txt 5. Notasi 1>&2 (atau >&2) : pembelokan standar output adalah sama dengan file descriptor 2 yaitu standar error. $ echo “mencoba menulis file” 1> baru $ cat filebaru 2> baru 1>&2 $ cat baru 6. Notasi >> (append) $ echo “kata pertama” > surat $ echo “kata kedua” >> surat $ echo “kata ketiga” >> surat $ cat surat $ echo “kata keempat” > surat $ cat surat 7. Notasi here document (<<++ …. ++) digunakan sebagai pembatas input dari keyboard. Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda apa saja, namun harus sama dan tanda penutup harus diberikan pada awal baris $ cat <<++ Hallo, apa kabar ? Baik-baik saja ? 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. Pembelokan 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) Operator pipa (|) digunakan untuk membuat eksekusi proses dengan melewati data langsung ke data lainnya. $ who $ who | sort $ who | sort –r $ who > tmp $ sort tmp $ rm tmp $ ls –l /etc | more $ ls –l /etc | sort | more Percobaan 4 : Filter Pipa juga digunakan untuk mengkombinasikan utilitas sistem 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 1.3. Tugas Pendahuluan Jawablah pertanyaan-pertanyaan di bawah ini : 1. Apa yang dimaksud redirection ? Jawab : Redirection adalah pembelokan yang dilakukan untuk standar input, output, dan error dan untuk mengalihkan file descriptor dari 0, 1, dan 2. 2. Apa yang dimaksud pipeline ? Jawab : Pipa adalah fasilitas yang memungkinkan untuk mengalihkan keluaran dari suatu perintah (standard ouput) menjadi masukan bagi perintah lain. Pipeline (baris pipa) merupakan baris yang melibatkan simbol pipa ( | ) $ who | sort | wc → baris pipa di atas menghasilkan : Keluaran who menjadi masukan bagi sort keluaran sort menjadi masukan bagi wc 3. Apa yang dimaksud perintah di bawah ini : echo, cat, more, sort, grep, wc, cut, uniq Jawab : echo adalah perintah yang digunakan untuk menampilkan output kelayar. cat adalah perintah yang digunakan untuk menghasilkan output ke layar dan merupakan berasal dari input sebuah keyboard. more adalah perintah yang digunakan untuk mem-paging halaman sort adalah perintah yang digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter. grep adalah perintah yang digunakan untuk menyaring masukannya dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan. wc adalah perintah yang digunakan untuk menghitung jumlah baris, kata dan karakter dari baris-baris masukan yang dibrikan kepadanya. cut adalah perintah yang digunakan untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option –c. uniq adalah perintah yang digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort. BAB II PEMBAHASAN 1.1. Peralatan / Perangkat yang Digunakan Peralatan / perangkat yang digunakan pada praktikum ini adalah : a. 1 PC atau laptop 1.2. Pembahasan a. Percobaan 1 : File Descriptor 1. Output ke layar (standar output), input dari system (kernel) Perintah atau command ps (process status) di gunakan untuk menampilkan informasi proses yang sedang berjalan termasuk nomor PID (Process Identification Number) dari proses tersebut. Proses atau biasa disebut task akan berjalan jika ada sebuah aplikasi yang sedang dijalankan, setiap proses yang berjalan oleh system diberi nomor PID yang berbeda-beda. Langkah dalam melakukan perintah ps adalah : Ketikkan ps pada kolom Terminal Linux yang tersedia Kemudian tekan enter, sehingga hasilnya adalah sebagai berikut Berdasarkan gambar di atas, yang ditampilkan dari perintah ps adalah PID, TTY, TIME dan CMD. Dimana : - PID = Nomor Identitas Proses. - TTY = nama terminal dimana proses tersebut aktif. - TIME = waktu Start berisi Sleeping dan Running. - CMD = Instruksi yang digunakan. 2. Output ke layar (standar output), input dari keyboard (standard input) Perintah cat adalah perintah yang digunakan untuk menghasilkan output ke layar dan merupakan berasal dari input sebuah keyboard. Langkah-langkah dalam menjalankan perintah cat adalah sebagai berikut : Ketikkan cat pada kolom terminal Linux. Tuliskan hal yang ingin diinputkan dari keyboard. Pada gambar di atas, user menginputkan “hallo, apa khabar” dengan keyboard. Lalu tulisan kedua “hallo, apa khabar” merupakan hasil (output) dari keyboard yang ditampilkan ke layar. 3. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error maka tampilan error pada layar (standard error) Perintah yang digunakan untuk membuat direktori baru adalah perintah mkdir. Jika user telah menjalankan perintah mkdir tanpa ada comment di bawahnya setelah ditekan enter, maka direktori tersebut berhasil dibuat. Akan tetapi, jika keluar comment maka terdapat error. Seperti gambar di bawah ini : mkdir yang pertama tidak error karena belum ada direktori bernama “mydir” sebelumnya. mkdir yang kedua error karena sebelumnnya sudah ada file direktori bernama “mydir”. b. Percobaan 2 : Pembelokan (Redirection) 1. Pembelokan standar output Perintah cat 1> myfile.txt memiliki fungsi yang hampir sama dengan cat. Akan tetapi, pada perintah di atas, hasil (ouput) disimpan dalam file txt bernama “myfile”. Jadi perintah di atas, apa yang sudah dituliskan (diinputkan) oleh user tidak langsung ditampilkan, melainkan disimpan dahulu. 2. Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi dari file Ada 2 perintah pada gambar di atas. cat 0< myfile.txt Perintah di atas merupakan perintah yang digunakan untuk menampilkan isi dari file myfile.txt (bukan dari keyboard). Isi dari file tersebut merupakan inputan dari keyboard sebelumnya dan telah disimpan pada “myfile.txt” cat myfile.txt Perintah cat myfile.txt juga memiliki fungsi yang sama dengan cat 0< myfile.txt, yaitu menampilkan isi dari file myfile.txt 3. Pembelokan standar error untuk disimpan di file User membuat direktori baru dengan nama mydir menggunakan perintah mkdir, tetapi pada percobaan di atas tidak bisa dijalankan karena sebelumnya sudah dibuat direktori dengan nama mydir. Lalu user membuat direktori baru lagi yang hasil (ouput) dipindahkan ke file myerror.txt, hasilnya dipindahkan ke file myerror.txt karena jika tidak diletakkan dalam sebuah file maka akan keluar pesan error seperti saat membuat direktori mydir. Kemudian, cat myerror.txt digunakan untuk menampilkan isi dari file myerror.txt, dimana pesan tersebut berisi pesan error tentang tidak bisa membuat direktori mydir karena sudah ada sebelumnya. 4. Notasi 2>&1 : pembelokan standar error (2>) adalah identik dengan file descriptor 1. ls filebaru Perintah ls filebaru digunakan untuk menampilkan apa yang terdapat pada direktori filebaru, tetapi filebaru belum dibuat sehingga yang keluar adalah pesan error. ls filebaru 2> out.txt Perintah ls filebaru 2> out.txt merupakan perintah yang digunakan untuk memindahkan pesan error dari ls filebaru ke dalam file out.txt cat out.txt Perintah cat out.txt digunakan untuk menampilkan isi dari file out.txt, karena di file tersebut telah dipindahkan hasil output dari proses ls filebaru maka yang keluar (ditampilkan) yaitu ls: cannot access filebaru: No such file or directory. ls filebaru 2> out.txt 2>&1 Perintah di atas digunakan untuk memindahkan isi dari out.txt ke layar monitor (standar output). Sehingga apabila user memasukkan perintah cat out.txt lagi, isi dari file tersebut akan kosong karena isi sebelumnya sudah dipindah langsung ke layar monitor. 5. Notasi 1>&2 (atau >&2) : pembelokan standar output adalah sama dengan file descriptor 2 yaitu standar error. User memasukkan text “mencoba menulis file” dengan perintah echo ke direktori “baru”. Kemudian memasukkan perintah “cat filebaru 2> baru 1>&2”, dimana akan dicapture atau disimpan hasil error pada filebaru sebelumnya dengan mereplace isi baru. Sehingga ketika user melakukan capture ulang isi baru setelah melakukan perintah diatas, yang muncul bukan tulisan “mencoba menulis file” melainkan pesan error akibat pembelokan output tadi. Perintah yang digunakan untuk menampilkan isi dari direktori baru adalah berikut : 6. Notasi >> (append) Perintah echo digunakan untuk menampilkan text ke layar, akan tetapi pada perintah di atas hasil dari echo disimpan ke dalam direktori surat. Yang pertama adalah menyimpan “kata pertama” pada surat. Lalu menuliskan lagi “kata kedua” dan menambahkannya pada direktori surat, begitu juga dengan “kata ketiga”. Kemudian jika ingin mengetahui apa saja yang terdapat pada direktori surat, maka dengan perintah cat surat. Hasilnya sebagai berikut : Selanjutnya, pada perintah dibawahnya terdapat perintah echo “kata keempat” > surat. Perintah tersebut digunakan untuk menyimpan “kata keempat” pada direktori surat dengan me-replace text yang sebelumnya telah terdapat pada direktori surat. Jadi bisa disimpulkan bahwa : > .. = digunakan untuk menyimpan text dan juga mengganti semua yang sudah terdapat pada suatu direktori. >> .. = digunakan untuk menambahkan text pada suatu direktori tanpa harus mengganti apa yang sudah ada di dalam direktori tersebut. 7. Notasi here document (<<++ …. ++) digunakan sebagai pembatas input dari keyboard. Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda apa saja, namun harus sama dan tanda penutup harus diberikan pada awal baris <<++ merupakan tanda pembatas pada perintah di atas. Apabila user melakukan perintah dengan tanda batas seperti itu, input yang berasal dari user tidak akan menampilkan apapun sebelum user menginputkan pembatasnya. Pada gambar di atas, pembatasnya adalah ++, dilihat dari gambar di atas, setelah user menginputkan ++ maka apa yang telah diinputkan akan langsung ditampilkan pada layar. Begitu juga dengan tanda-tanda yang lain : 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 Tujuan dari percobaan di atas adalah untuk menginputkan kalimat ke dalam direktori dan menampilkan file surat. Maksud dari perintah di atas adalah menampilkan isi pada myfile.txt, kemudian user diminta memasukkan input dari keyboard dan langsung ditampilkan. Setelah ditekan CTRL+D (mengakhiri input keyboard), maka isi file surat akan ditampilkan. 9. Untuk membelokkan standart output ke file, digunakan operator > Ketika user menginputkan echo hello, maka akan langsung ditampilkan pada layar. Perintah kedua merupakan perintah yang digunakan untuk menyimpan hasil tampilan dari echo ke direktori output. Sehingga, jika user menggunakan perintah cat output, maka yang akan keluar adalah “hello”. 10. Untuk menambahkan output ke file digunakan operator >> Perintah di atas digunakan untuk menambahkan text “bye” ke dalam direktori output. Sehingga jika menjalankan perintah cat ouput, yang ditampilkan adalah : 11. Untuk membelokkan standart input digunakan operator < Perintah tersebut merupakan bagian dari perintah cat. Input di atas bukan berasal dari keyboard tetapi berasal dari direktori output yang dibelokkan sebagai input. 12. Pembelokan standart input dan standart output dapat dikombinasikan tetapi tidak boleh menggunakan nama file yang sama sebagai standart input dan output. $ cat < output > out : menjadikan file output sebagai pembelok standar input sekaligus sebagai input dari file out $ cat out menampilkan isi dari file out $ cat < output >> out menjadikan file output sebagai pembelok standar input sekaligus menambahkan isi file output ke file out $ cat < output > output menjadikan file output sebagai pembelok standar input sekaligus sebagai input dari file out. Karena isi dari file output kosong (sudah dipindahkan ke file out), maka ketika dicapture tidak menghasilkan apa-apa. Perintah di atas tidak bisa berjalan karena syaratnya yaitu tidak boleh menggunakan nama file yang sama sebagai standart input dan output. Perintah di atas digunakan untuk menampilkan isi direktori out. Pada perintah ini yang ditampilkan adalah berupa looping hello-bye, dan bisa dihentikan dengan cara CTRL + C c. Percobaan 3 : Pipa (Pipeline) who Perintah yang digunakan untuk menunjukkan siapa yang sedang aktif serta waktu aktif. who | sort Apabila saat itu yang aktif terdapat beberapa user, perintah who | sort ini digunakan untuk mengurutkan user tersebut secara ascending. Pada percobaan user, hanya terdapat 1 user, sehingga jika dijalankan perintah ini maka tidak akan berpengaruh terhadap tampilan pada terminal. who | sort –r Apabila saat itu yang aktif terdapat beberapa user, perintah who | sort -r ini digunakan untuk mengurutkan user tersebut secara descending. who > tmp Perintah di atas digunakan untuk memindahkan output ke file tmp. sort > tmp Perintah diatas digunakan untuk mengurutkan isi dari direktori tmp. rm > tmp Perintah di atas digunakan untuk menghapus file tmp. Perintah di atas digunakan untuk menampilkan isi dari direktori etc dengan model view per satu layar penuh. Perintah di atas juga memiliki fungsi yang sama dengan ls -l /etc | more, akan tetapi bedanya adalah jika terdapat sort pada tengah-tengah perintah di atas, maka hasil tampilan akan diurutkan secara ascending. d. Percobaan 4 : Filter Perintah tersebut digunakan untuk mencari kata helena pada directory etc/passwd. Jika hasilnya seperti di atas, maka kata yang dicari terdapat pada direktori. $ ls /etc | wc Digunakan untuk menampilkan jumlah baris, kata dan karakter yang terdapat dalam direktori etc. $ ls /etc | wc –l Digunakan untuk menampilkan jumlah kata yang terdapat dalam direktori etc cat > kelas1.txt Perintah di atas dgunakan untuk membuat kelas1.txt dengan cara membelokkan standar output kelas1.txt. Berdasarkan data di atas, user memasukkan isi ke dalam file kelas1.txt. Apabila sudah selesai dalam menginputkan nama, maka tekan CTRL + D. $ cat > kelas2.txt Memiliki fungsi yang hampir sama yaitu membat kelas2.txt dengan cara membelokkan standar ouput ke kelas2.txt. Berdasarkan data di atas, user memasukkan isi ke dalam file kelas1.txt. Apabila sudah selesai dalam menginputkan nama, maka tekan CTRL + D. $ cat kelas1.txt kelas2.txt | sort Perintah di atas digunakan untuk menggabungkan isi dari kelas1.txt dengan kelas2.txt yang acak tadi, kemudian di urutkan oleh perintah di atas dengan fungsi sort dan langsung ditampilkan ke layar, karena pada perintah di atas hasil output tidak dibelokkan ke direktori manapun. $ cat kelas1.txt kelas2.txt > kelas.txt Fungsi di atas adalah untuk menyimpan hasil dari kelas1.txt kelas2.txt ke dalam direktori kelas.txt (pembelokkan output) $ cat kelas.txt | sort | uniq Fungsi di atas untuk menampilkan isi dari file.txt, dimana file.txt tersebut berasal dari inputan kelas1.txt dan kelas2.txt, yang lau diurutkan secara ascending. 1.3. Latihan 1. Masuk sebagai login root 2. Masuk ke direktori sbin, Lihat daftar secara lengkap pada direktori aktif, belokkan tampilan standard output ke file baru. 3. Lihat daftar secara lengkap pada direktori /etc/passwd, belokkan tampilan standard output ke file baru tanpa menghapus file baru sebelumnya. 4. Urutkan file baru dengan cara membelokkan standard input. 5. Urutkan file baru dengan cara membelokkan standard input dan standard output ke file baru.urut. 6. Buatlah direktori latihan2 sebanyak 2 kali dan belokkan standard error ke file rmdirerror.txt. mkdir latihan2 = digunakan untuk membuat direktori bernama latihan2. mkdir latihan2 = dalam pembuatannya terjadi kesalahan karena direktori tersebut sudah ada. mkdir latihan2 2> rmdierror.txt = membelokkan hasil kesalahan ke file rmdierror.txt cat rmdierror.txt = menampilkan hasil pembelokkan oleh kesalahan pembuatan direktori latihan2 yang kedua. 7. Urutkan kalimat berikut : Jakarta Bandung Surabaya Padang Palembang Lampung Dengan menggunakan notasi here document (<@@@ …@@@) <<@@@ merupakan tanda pembatas pada perintah di atas. Apabila user melakukan perintah dengan tanda batas seperti itu, input yang berasal dari user tidak akan menampilkan apapun sebelum user menginputkan pembatasnya. Pada gambar di atas, pembatasnya adalah @@@, dilihat dari gambar di atas, setelah user menginputkan @@@ maka apa yang telah diinputkan akan langsung ditampilkan pada layar. Setelah itu diurutkan secara ascending. 8. Hitung jumlah baris, kata dan karakter dari file baru.urut dengan menggunakan filter dan tambahkan data tersebut ke file baru. 9. Tulislah urut-urutan perintah yang anda lakukan mulai langkah 1 sd 7 dan jelaskan maksud masing-masing perintah diatas ls = digunakan untuk melihat isi direktori dan menampilkan pada layar ls 1>filebaru.txt = menampilkan isi direktori dengan membelokkan hasil ke filebaru.txt ls filebaru.txt = melihat filebaru.txt cat filebaru.txt = menampilkan yang telah dibelokkan sebelumnya ke dalam filebaru.txt ls /etc/passwd >>filebaru.txt = perintah untuk menampilkan direktori password. Perintah >> digunakan untuk menambahkan teks pada filebaru.txt cat filebaru.txt =menampilkan filebaru.txt, menampilkan yang telah ditambahkan pada perintah di atasnya. sort filebaru.txt = mengurutkan secara ascending isi dari filebaru.txt sort filebaru.txt > filebaru.urut = membelokkan hasil urutan ascending tersebut ke filebaru.urut sort filebaru.urut = mengurutkan filebaru.urut secara ascending mkdir latihan2 = digunakan untuk membuat direktori bernama latihan2. mkdir latihan2 = dalam pembuatannya terjadi kesalahan karena direktori tersebut sudah ada. mkdir latihan2 2> rmdierror.txt = membelokkan hasil kesalahan ke file rmdierror.txt cat rmdierror.txt = menampilkan hasil pembelokkan oleh kesalahan pembuatan direktori latihan2 yang kedua. <<@@@ merupakan tanda pembatas pada perintah di atas. Apabila user melakukan perintah dengan tanda batas seperti itu, input yang berasal dari user tidak akan menampilkan apapun sebelum user menginputkan pembatasnya. Pada gambar di atas, pembatasnya adalah @@@, dilihat dari gambar di atas, setelah user menginputkan @@@ maka apa yang telah diinputkan akan langsung ditampilkan pada layar. Setelah itu diurutkan secara ascending. ls filebaru.urut | wc = menghitung jumlah baris, kata dan kalimat pada filebaru.urut ls filebaru.urut | wc –l = menghitung jumlah baris saja. ls filebaru.urut | wc -l > baru = membelokkan hasil dari perintah ls tersebut ke direktori baru sort baru = mengurutkan direktori baru 10. Jalankan perintah di bawah ini dan perhatikan hasilnya serta apa maksud masingmasing perintah. $ cat > hello.txt dog cat cat duck dog chicken chicken duck chicken cat dog duck [Ctrl-d] $ cat hello.txt | sort | uniq $ cat hello.txt | grep “dog” | grep –v “cat” - cat > hello.txt perintah di atas digunakan untuk menginputkan dari keyboard dan dibelokkan ke file hello.txt - cat hello.txt | sort | uniq perintah tersebut digunakan untuk menampilkan isi dari hello.txt secara ascending dan menghilangkan baris-baris yang mengalami duplikasi. - cat hello.txt | grep “dog” | grep –v “cat” perintah di atas digunakan untuk menampilkan isi dari hello.txt, akan tetapi terdapat syarat dalam tampilannya. Yaitu, hanya yang terdapat kata “dog” saja setelah itu menyaring kembali kata atau teks yang tidak terdapat “cat” nya. BAB III PENUTUP 3.1 Kesimpulan Operasi input/output pada Linux merupakan sebuah proses dimana terdapat input dan output sebagai hasilnya. Penginputan perintah pada Linux dilakukan melalui Shell. Terdapat 4 jenis dalam operasi I/O Linux yaitu file descriptor, pembelokan (redirection), pipa (pipeline) dan filter. Pada tiap-tiap jenis ada perintah-perintah yang bisa digunakan sebagai input dan output. Perintah-perintah yang ada memiliki fungsi yang berbeda-beda. Berikut adalah nama-nama perintah dan juga fungsinya : - echo = digunakan untuk menampilkan output ke layar. - cat = digunakan untuk menghasilkan output ke layar dan berasal dari keyboard. - more = digunakan untuk mem-paging halaman - sort = digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter. - grep = digunakan untuk menyaring masukannya dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan. - wc = digunakan untuk menghitung jumlah baris, kata dan karakter dari baris- baris masukan yang dibrikan kepadanya. - cut = digunakan untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option –c. - uniq = digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort. 3.2 Daftar Pustaka Modul Praktikum 4. http://terminaltechno.blog.uns.ac.id/2009/11/06/operasi-input-output-operasifile-dan-sruktur-directory/. (Diakses pada 8 Oktober 2017, pukul 21.00 WIB)