Hai semuanya, apa kabar? Kali ini saya mau nulis yang berkaitan dengan Linux lagi nih, yaitu redirection. Fungsi ini dapat kita gunakan untuk mengarahkan output atau hasil dari suatu perintah ke file lain.
Sebenarnya ada beberapa operator yang dapat digunakan pada fungsi ini. Namun pada tulisan kali ini kita coba belajar dua dulu yaa. Dua operator tersebut adalah > (redirect) dan >> (append)
- > Redirect
Operator ini memungkinkan kita untuk mengarahkan hasil atau output dari suatu perintah ke dalam suatu file. Misalnya, pada direktori yang sedang digunakan (“redirection”) berisi lima file mulai dari 1.txt sampai dengan 5.txt. Apabila kita jalankan perintahls -l
untuk melihat daftar file yang ada pada direktori tersebut beserta beberapa detail lain, tampilannya adalah seperti berikut:
$ ls -l
total 0
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 1.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 2.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 3.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 4.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 5.txt
Nah, apabila kita ingin meneruskan hasil dari perintah ls -l tersebut ke dalam file hasil.txt, maka kita bisa menggunakan perintahls -l > hasil.txt
. Setelah perintah tersebut dijalankan, memang tidak menampilkan output. Tapi kita bisa cek isi file hasil.txt dengan menggunakan perintahcat hasil.txt
.
$ cat hasil.txt
total 0
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 1.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 2.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 3.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 4.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 5.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:29 hasil.txt
Wah ternyata file hasil.txt juga turut ikut juga. Nah, sekarang kita coba lagi untuk gunakan perintah echo untuk menuliskan sesuatu dan hasilnya diteruskan ke file hasil.txt. Misalnya kita coba gunakan kata ‘Hello World’.
$ echo 'Hello World' > hasil.txt
$
Lalu, kita coba cek isi file hasil.txt, apakah berubah dari sebelumnya? Gunakan perintahcat hasil.txt
.
$ cat hasil.txt
Hello World
Wah, ternyata isi file sebelumnya (yang berisi tentang detail file 1.txt dan berbagai file lainnya) hilang. Ya, operator > akan menimpa isi file yang sudah ada sebelumnya. Apabila kita tidak ingin menimpa isi file yang sudah ada, maka kita lanjut ke operator selanjutnya. - >> Append
Sesuai namanya, operator append akan menambahkan nilai baru (dari output yang diteruskan) pada baris baru dari file. Contohnya kita akan teruskan output dari perintahls -l
ke dalam file hasil.txt dan kita lihat hasilnya. Kita gunakan perintahls -l >> hasil.txt
$ ls -l >> hasil.txt
$ cat hasil.txt
Hello World
total 4
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 1.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 2.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 3.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 4.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 0 Sep 3 11:26 5.txt
-rw-rw-r-- 1 phantom-zorin2 phantom-zorin2 12 Sep 3 11:36 hasil.txt
Kita bisa lihat bahwa entri/tulisan “Hello World” masih ada pada file tersebut dan output dari perintahls -l
diletakkan pada baris baru. Jadi dengan menggunakan operator >> tidak menimpa isi file yang sudah ada sebelumnya.
Nah, itulah fungsi dari beberapa operator yang ada di Linux. Fungsi ini terkadang juga digunakan dalam pembuatan log. Diharapkan tulisan ini dapat menambah pemahaman kita terkait fungsi-fungsi yang ada pada sistem berbasis Linux. Sampai jumpa di tulisan lainnya. Bye.