linux

Perintah grep di Linux/Unix dengan Contoh

Perintah ‘grep’ adalah singkatan dari “global regular expression print”. Perintah grep menyaring konten file yang membuat pencarian kita lebih mudah. Ini adalah utilitas baris perintah untuk mencari grup data teks biasa untuk baris yang sesuai dengan ekspresi reguler. Nama “grep” berasal dari perintah, yaitu, ed, yang memiliki efek yang sama. Awalnya, grep dirancang untuk sistem operasi Unix, tetapi kemudian tersedia untuk setiap sistem mirip Unix dan beberapa lainnya seperti OS 9. Filter grep menemukan file untuk pola karakter tertentu dan menunjukkan setiap baris yang menyertakan pola tersebut. Karakter harus berada dalam tanda kutip jika mereka muncul dalam parameter pola dengan arti khusus untuk shell. Biasanya, kita harus menyertakan seluruh pola dalam satu tanda kutip jika parameter pola bukan string umum. Dalam ekspresi seperti [a-z], tanda minus (-) menjelaskan rentang berdasarkan urutan kolasi saat ini. Urutan kolasi dapat menentukan kelas ekuivalen dalam rentang karakter untuk digunakan. Perintah grep mengasumsikan stdin ketika tidak ada file yang disebutkan. Polanya disebut ekspresi reguler yang ditemukan di dalam file. Polanya adalah ekspresi reguler terbatas dalam format perintah egrep atau ed. Perintah grep menerapkan algoritma non-deterministik yang solid. Ini berguna saat kita perlu menyaring file log besar. Sejarah Singkat grep Sebelum diberi nama, grep adalah utilitas rahasia yang ditentukan oleh Ken Thompson untuk menemukan file untuk beberapa pola. Tidak mengetahui keberadaannya, Doug Mcllroy meminta Thompson untuk menentukan fungsi semacam itu. Menjawab bahwa dia akan memikirkannya semalam. Thompson membuat perbaikan dan memperbaiki kesalahan selama sekitar satu jam pada programnya yang dikenal sebagai “s” (atau search). Dia mempresentasikan fungsi tersebut ke Mcllroy keesokan harinya, yang mengatakan itu persis seperti yang diinginkannya. Kisah Thompson mungkin menjelaskan keyakinan bahwa perintah grep ditentukan semalam. Thompson menetapkan versi awal dalam bahasa rakitan PDP-11 untuk mendukung Lee E. McMohan memeriksa teks Federalist Papers untuk menentukan penulis masing-masing makalah. Editor teks ed memiliki dukungan untuk ekspresi reguler tetapi tidak dapat digunakan pada teks besar seperti itu; Thompson menyalin kode itu ke alat mandiri. Dia memilih nama tersebut karena dalam ed, perintah grep akan mencetak setiap baris yang sesuai dengan pola yang dijelaskan. Pertama, grep ditambahkan dalam Unix Versi 4, dengan mengatakan bahwa “itu umumnya disebut sebagai alat perangkat lunak prototipikal”, Mcllroy menyetujui grep dengan “menanamkan secara tak terhapuskan” filosofi alat Thompson di Unix. Implementasi grep Berbagai implementasi grep hadir di beberapa lingkungan pengembangan perangkat lunak dan sistem operasi. Versi awal termasuk fgrep dan egrep, yang diperkenalkan dalam versi 7 Unix. Versi egrep mendukung sintaks untuk ekspresi reguler yang diperluas yang disertakan oleh Alfred Aho setelah implementasi ekspresi reguler asli dari Ken Thompson. Versi fgrep menemukan daftar string tetap dengan algoritma pencocokan string Aho-Corasick. Biner versi ini tersedia di sistem modern, terhubung ke grep atau memanggil grep sebagai skrip shell menggunakan flag yang benar ditambahkan saat umumnya digunakan pada sistem POSIX. Perintah lain menyertakan kata “grep” untuk menunjukkan bahwa mereka adalah alat pencari, biasanya yang bergantung pada kecocokan ekspresi reguler. Misalnya, utilitas “pgrep” menampilkan proses yang judulnya sama dengan ekspresi reguler yang diberikan. Grep adalah nama fungsi bawaan yang mencari elemen dalam daftar yang memenuhi sifat tertentu dalam bahasa pemrograman Perl. Biasanya, fungsi tingkat tinggi ini disebut “filter” atau “where” dalam bahasa lain. Perintah “pcregrep” adalah implementasi grep yang menggunakan sintaks untuk ekspresi reguler Perl. Fungsionalitas yang sama dapat ditambahkan ke versi GNU grep menggunakan flag -P. Juga, port grep (misalnya, di GnuWin32 dan Cygwin) dijalankan pada Microsoft Windows. Beberapa versi Windows menyediakan perintah findstr atau qgrep yang setara. Selain itu, perintah grep adalah bagian dari MSX-DOS2 Tools dari ASCII untuk versi 2 dari MSX-DOS. Perintah fgrep, egrep, dan grep telah dikirimkan ke OS IBM i. Perangkat lunak Adobe InDesign memiliki fungsi GREP (sejak edisi CS3) dalam dialog kotak tab “GREP” find/change dan ditentukan menggunakan CS4 dalam “GREP styles” gaya paragraf. Cara menginstal grep di Linux Grep sudah terinstal sebelumnya di hampir setiap distribusi Linux. Namun, jika hilang dari sistem kita, kita dapat menginstalnya dengan perintah berikut di jendela terminal: arduinoSalin kode$ sudo apt-get install grep grep dengan pipe Perintah ‘grep’ biasanya digunakan dengan pipe (|). Sintaks: bashSalin kodecommand | grep <kataCari> Contoh: bashSalin kodecat marks.txt | grep 9 Lihat snapshot di atas, perintah grep menyaring semua data yang mengandung ‘9’. grep tanpa pipe Dapat digunakan tanpa pipe juga. Sintaks: phpSalin kodegrep <kataCari> <namaFile> Contoh: cssSalin kodegrep 9 marks.txt Lihat snapshot di atas, perintah grep melakukan pekerjaan yang sama seperti contoh sebelumnya tetapi tanpa pipe. Opsi grep ref:[1]

DETAIL

Direktori Non-Standar

Direktori yang tidak termasuk dalam FHS standar disebut direktori non-standar. Direktori non-standar adalah sebagai berikut: /cdrom Direktori /cdrom tidak ada dalam FHS standar tetapi cdrom dapat di-mount pada direktori ini. Idealnya, menurut FHS standar, cdrom harus di-mount di bawah /media. /run Direktori /run menyimpan data variabel saat run-time. Data variabel saat run-time berarti data tentang sistem yang sedang berjalan sejak boot terakhir. Misalnya, daemon yang sedang berjalan. Contoh: bashSalin kodels /run Lihat snapshot di atas, perintah “ls /run” menampilkan isi dari direktori /run. /lost+found https://www.javatpoint.com/linux-fhs-non-standard-directoriesSelama sistem crash atau dalam situasi lain ketika pengecek sistem file Linux (fsck) memulihkan data yang hilang, data tersebut disimpan di direktori ini. Data tersebut mungkin dalam kondisi baik atau tidak. ref:[1]

DETAIL

Sumber Daya Sistem Unix (/usr)

Meskipun diucapkan sebagai “user”, sebenarnya ini adalah singkatan dari Unix System Resources. Ini juga disebut hierarki sekunder karena berisi biner, pustaka, dan dokumentasi untuk semua aplikasi pengguna. Direktori ini hanya berisi data yang dapat dibagikan dan hanya-baca. Contoh: bashSalin kodels /usr Lihat snapshot di atas, perintah “ls /usr” menampilkan direktori /usr. Kami akan menjelaskan beberapa sub-direktori /usr: /usr/bin Direktori /usr/bin berisi perintah biner non-esensial untuk semua pengguna. Jika Anda tidak dapat menemukan perintah di /bin, cari di /usr/bin. Direktori ini berisi banyak perintah. /usr/include Direktori /usr/include berisi file include standar untuk bahasa pemrograman C. /usr/lib Direktori /usr/lib berisi pustaka yang tidak dieksekusi langsung oleh pengguna. Dengan kata lain, direktori ini berisi biner untuk /usr/bin dan /usr/sbin. /usr/share Direktori /usr/share berisi data yang tidak bergantung pada arsitektur (berbagi). /usr/local Direktori /usr/local digunakan untuk menginstal perangkat lunak secara lokal. Artinya, semua program pengguna yang akan Anda instal dari sumber akan diinstal di sini. /usr/src Istilah ‘src’ adalah singkatan dari source (sumber). Direktori ini digunakan untuk menyimpan kode sumber seperti kode sumber kernel dengan file header-nya. ref:[1]

DETAIL

Direktori Memori Linux

Direktori memori berisi file-file dari seluruh sistem. Semua informasi perangkat, proses yang berjalan, atau informasi terkait sistem disimpan di direktori ini. Direktori memori berisi direktori berikut: /dev Istilah ‘dev’ adalah singkatan dari device (perangkat). Seperti yang Anda tahu, dalam sistem operasi Linux, segala sesuatu dianggap sebagai file. Ini tampak seperti file biasa tetapi tidak memakan ruang disk. File-file yang digunakan untuk mewakili dan mengakses perangkat disimpan di sini, termasuk perangkat terminal seperti USB. Semua file yang disimpan di /dev tidak terkait dengan perangkat nyata, beberapa terkait dengan perangkat virtual juga. /proc Istilah ‘proc’ adalah singkatan dari process (proses). Sama seperti /dev, /proc juga tidak memakan ruang disk. Ia berisi informasi proses. Ini adalah sistem file pseudo yang berisi informasi tentang proses yang sedang berjalan. Ini juga bekerja sebagai sistem file virtual yang berisi informasi teks tentang sumber daya sistem. Contoh: bashSalin kodels /proc Lihat snapshot di atas, perintah “ls /proc” menampilkan isi dari /proc. Banyak file diberi nama sebagai angka dan beberapa file bernama juga ada. Direktori /proc memiliki beberapa properti file seperti tanggal, yang terus diperbarui seperti yang ditunjukkan dalam snapshot di bawah ini. Lihat snapshot di atas, ketika sistem memiliki dua CPU, file akan terlihat seperti ini. Contoh: bashSalin kodecat /proc/interrupts /sys Istilah ‘sys’ adalah singkatan dari system (sistem). Pada dasarnya ia berisi informasi kernel tentang perangkat keras. Direktori ini dibuat untuk kernel Linux 2.6. Ini adalah sejenis /proc dan digunakan untuk konfigurasi plug and play. ref:[1]

DETAIL

Direktori Data Linux

Direktori data digunakan untuk menyimpan data sistem. Direktori data berisi direktori berikut: /home Direktori /home menyimpan file pribadi pengguna. Setelah /home, ada direktori yang biasanya dinamai sesuai nama pengguna seperti /home/sssit. Di dalam direktori ini, terdapat subdirektori seperti Desktop, Downloads, Documents, Pictures, dll. Contoh: bashSalin kodels /home ls /home/sssit Lihat snapshot di atas, perintah “ls /home” menampilkan ‘sssit’. Sementara perintah “ls /home/sssit” menampilkan subdirektori ‘sssit’. Catatan Tanda tilde () menunjukkan “/home/sssit”. Misalnya, jika Anda ingin memberikan perintah “/home/sssit/Desktop”, alih-alih menulis ini, Anda juga bisa menulis “/Desktop”, keduanya sama. /root Direktori /root adalah direktori home dari pengguna root. Perlu dicatat bahwa direktori /root berbeda dari direktori root (/). /srv Istilah ‘srv’ adalah singkatan dari service (layanan). Direktori /srv berisi data spesifik server untuk layanan yang disediakan oleh sistem seperti www, cvs, rsync, ftp, dll. /media Direktori /media berfungsi sebagai titik mount untuk perangkat media yang dapat dilepas seperti CD-Rom, floppy, perangkat USB, dll. Ini adalah direktori yang baru diperkenalkan dan karenanya sistem dapat berjalan tanpa direktori ini juga. Contoh: bashSalin kodels /media Lihat snapshot di bawah, perintah “ls /media” menampilkan konten /media. /mnt Istilah ‘mnt’ adalah singkatan dari mount (pasang). Direktori /mnt seharusnya kosong dan sysadmin hanya dapat memasang filesystem sementara di sini. /tmp Istilah ‘tmp’ adalah singkatan dari temporary (sementara). Data yang disimpan di /tmp bersifat sementara dan dapat menggunakan ruang disk atau RAM. Ketika sistem di-reboot, file di bawah direktori ini akan otomatis dihapus. Jadi disarankan untuk tidak pernah menggunakan /tmp untuk menyimpan data penting. ref:[1]

DETAIL

Direktori Biner Linux

File biner adalah file yang berisi kode sumber yang telah dikompilasi (atau kode mesin). Mereka juga disebut file eksekusi karena mereka dapat dijalankan di komputer. Direktori biner berisi direktori berikut: /bin Direktori /bin berisi biner pengguna, file eksekusi, perintah Linux yang digunakan dalam mode pengguna tunggal, dan perintah umum yang digunakan oleh semua pengguna, seperti cat, cp, cd, ls, dll. Direktori /bin tidak mengandung direktori. Contoh: bashSalin kodels /bin Lihat snapshot di atas, perintah “ls /bin” menampilkan daftar direktori /bin. Perintah seperti cp, cat, less, touch, dll dapat dilihat dalam snapshot. /sbin Direktori /sbin juga berisi file eksekusi, tetapi tidak seperti /bin, ia hanya berisi biner sistem yang memerlukan hak istimewa root untuk menjalankan tugas tertentu dan berguna untuk tujuan pemeliharaan sistem, misalnya fsck, root, init, ifconfig, dll. Contoh: bashSalin kodels /sbin Lihat snapshot di atas, perintah “ls /sbin” menampilkan daftar direktori /sbin. /lib Direktori /lib berisi pustaka bersama yang sering digunakan oleh direktori /bin dan /sbin. Ia juga berisi modul kernel. Nama file ini dapat dikenali sebagai ld* atau lib*.so.*. Misalnya, ld-linux.so.2 dan libfuse.so.2.8.6. Contoh: bashSalin kodels /lib Lihat snapshot di atas, perintah “ls /lib” menampilkan daftar direktori /lib. /opt Istilah ‘opt’ adalah singkatan dari optional (opsional). Tujuan utamanya adalah untuk menyimpan paket perangkat lunak aplikasi opsional. Aplikasi tambahan dari vendor individu harus diinstal di /opt. Oleh karena itu, dalam beberapa sistem, /opt mungkin kosong karena tidak memiliki aplikasi tambahan ref:[1]

DETAIL

Standar Hierarki Filesystem Linux (FHS)

Standar hierarki filesystem (Filesystem Hierarchy Standard atau FHS) menggambarkan struktur direktori dan isinya dalam sistem operasi Unix dan sejenis Unix. FHS menjelaskan di mana file dan direktori harus berada dan apa yang seharusnya mereka isi. Versi terkini adalah 3.0 yang dirilis pada 3 Juni 2015 dan dikelola oleh Free Standards Group. Dalam sistem operasi sejenis Unix, semuanya dianggap sebagai file. Hanya distribusi Linux yang mengikuti FHS dan itu pun sebagian. Karena setiap distribusi memiliki kebijakan mereka sendiri, Anda mungkin melihat beberapa perbedaan dalam struktur pohon direktori dari berbagai distribusi. Jika Anda ingin mengetahui informasi tentang FHS sistem Anda, masukkan perintah man hier. Ini akan menampilkan struktur direktori sistem Anda. Catatan GoboLinux dan NixOS tidak mengikuti FHS sama sekali, mereka memiliki kebijakan sendiri yang sepenuhnya berbeda. Direktori Root Semua direktori dalam sistem Linux berada di bawah direktori root yang diwakili oleh garis miring ke depan (/). Segala sesuatu dalam sistem Anda dapat ditemukan di bawah direktori root ini bahkan jika mereka disimpan dalam perangkat virtual atau fisik yang berbeda. Direktori Root Linux Lihat snapshot di atas, kami telah menunjukkan direktori root sistem kami, yaitu Ubuntu, dengan bantuan perintah ls /. Di sini, kami menulis (/) untuk mewakili direktori root. Direktori Linux Kami telah mengkategorikan direktori berdasarkan jenis file seperti yang diberikan di bawah ini: Tipe Direktori Jenis File yang Disimpan Direktori biner Berisi file kode sumber yang terkompilasi atau biner, contoh: /bin, /sbin, dll. Direktori konfigurasi Berisi file konfigurasi sistem, contoh: /etc, /boot. Direktori data Menyimpan file data, contoh: /home, /root, dll. Direktori memori Menyimpan file perangkat yang tidak memakan ruang hard disk sebenarnya, contoh: /dev, /proc, /sys. Usr (Unix System Resources) Berisi data yang dapat dibagi dan hanya dapat dibaca, contoh: /usr/bin, /usr/lib, dll. var (direktori variabel) Berisi data berukuran besar, contoh: /var/log, /var/cache, dll. Direktori non-standar Direktori yang tidak termasuk dalam FHS standar, contoh: lost+found, /run, dll. ref:[1]

DETAIL

Perintah Linux less

Perintah less sama seperti perintah more tetapi mencakup beberapa fitur tambahan. Perintah ini secara otomatis menyesuaikan dengan lebar dan tinggi jendela terminal, sedangkan perintah more memotong konten saat lebar jendela terminal menjadi lebih pendek. Sintaks phpSalin kodeless <nama file> Contoh bashSalin kodeless /var/log/udev Lihat snapshot di atas, kami memberikan perintah “less /var/log/udev”. Di pojok kiri bawah, nama file ditampilkan. Mencari String di Linux String tertentu dapat dicari dengan mengetik garis miring ke depan (/) diikuti dengan nama string, pada tempat nama file di pojok kiri bawah kotak terminal. Sintaks bashSalin kode/nama string Contoh bashSalin kode/add Lihat snapshot di atas, kami ingin menemukan string ‘add’, oleh karena itu kami mengetik “/add” di pojok kiri bawah. Output Snapshot di bawah menunjukkan output dari perintah “/add”. String ‘add’ akan secara otomatis disorot. Tombol Navigasi Perintah less Perintah less memiliki tombol navigasi yang mirip dengan editor vim. Mari kita lihat beberapa tombol navigasi dan operasi lainnya dari perintah less. 1. Navigasi Pencarian Tombol navigasi pencarian akan membantu Anda dalam pencarian maju dan mundur. Pencarian Maju Pencarian Mundur Jalur Pencarian 2. Navigasi Layar 3. Navigasi Baris Untuk bergerak maju atau mundur baris demi baris: 4. Navigasi Lainnya 5. Tombol Penghitung 6. Navigasi Bertanda 7. Banyak File Dengan melewatkan argumen dalam baris yang sama: Salin kodeless file1 file2 Saat melihat file1, pergi ke file2: rubySalin kodeless file1 :e file2 Untuk bernavigasi di antara file saat lebih dari dua file dibuka: ref: [1]

DETAIL

Perintah Linux more

Seperti perintah cat yang menampilkan konten file, perintah more juga menampilkan konten sebuah file. Perbedaan utamanya adalah, dalam kasus file yang lebih besar, output perintah cat akan menggulir keluar dari layar Anda sementara perintah more menampilkan output satu layar penuh pada satu waktu. Berikut adalah tombol-tombol yang digunakan dalam perintah more untuk menggulir halaman: Tombol yang Digunakan dalam Perintah more Sintaks phpSalin kodemore <nama file> Contoh bashSalin kodemore /var/log/udev Lihat snapshot di atas, di pojok kiri bawah menunjukkan 0%, yang menunjukkan bahwa 0% halaman telah ditampilkan. Untuk menggulir ke bawah, gunakan tombol ‘spasi’, halaman berikutnya akan ditampilkan. Jika Anda ingin menggulir ke bawah halaman baris demi baris, gunakan tombol ‘enter’. Jika Anda ingin kembali ke halaman terakhir atau sebelumnya, gunakan tombol ‘b’. Opsi Perintah more Opsi Fungsi more -num Membatasi baris yang ditampilkan per halaman. more -d Menampilkan pesan pengguna di pojok kanan bawah. more -s Mengurangi baris kosong. more +/nama string Membantu menemukan string tertentu. more +num Digunakan untuk menampilkan konten dari baris tertentu. Catatan Perintah more tidak dapat digunakan untuk menampilkan file biner. ref: [1]

DETAIL

Perintah Cat di Linux/Unix dengan Contoh

Perintah cat adalah alat yang paling universal dan kuat. Ini dianggap sebagai salah satu perintah yang paling sering digunakan. Perintah ini dapat digunakan untuk menampilkan isi file, menyalin konten dari satu file ke file lain, menggabungkan konten dari beberapa file, menampilkan nomor baris, menampilkan $ di akhir baris, dan sebagainya. Perintah cat dapat digambarkan sebagai utilitas standar Unix yang secara berurutan membaca file, menuliskannya pada output standar. Nama ini berasal dari fungsi untuk menggabungkan file. Perintah ini telah dikirimkan ke beberapa sistem operasi. Perintah ini digunakan untuk menggabungkan file yang mencakup beberapa file menjadi satu file. Penggunaan Perintah Cat Spesifikasi Unix Tunggal menjelaskan operasi cat untuk membaca file dalam urutan yang diberikan dalam argumennya, menentukan isinya dalam urutan yang sama seperti output standar. Spesifikasi tersebut mengamanatkan dukungan satu opsi bendera, yaitu u (output tidak buffer), yang berarti bahwa semua byte ditentukan setelah dibaca. Secara default, beberapa sistem operasi melakukannya dan menghindari bendera tersebut, seperti yang ada di GNU Core Utilities. Jika ada nama file input yang dijelaskan sebagai satu tanda hubung, perintah cat membaca melalui input standar dalam urutan pada titik tersebut. Perintah cat hanya membaca dari input standar jika tidak ada file yang disebutkan. Kasus Penggunaan Perintah Cat Perintah cat dapat digunakan untuk mem-pipe file ke program apa pun yang mengharapkan data biner atau teks biasa pada aliran input. Perintah cat tidak merusak byte non-teks saat mengeluarkan dan menggabungkan. Dengan demikian, dua kasus penggunaan utama perintah ini adalah jenis file biner format-kompatibel tertentu dan file teks. Penggabungan teks terbatas pada file teks dengan pengkodean warisan yang sama, seperti ASCII. Perintah cat tidak menawarkan cara untuk menggabungkan file teks Unicode yang mengandung file atau Byte Order Mark dengan pengkodean teks yang berbeda satu sama lain. File gabungan yang dihasilkan mungkin tidak diizinkan untuk beberapa set data biner terstruktur. Misalnya, jika sebuah file mengandung footer atau header unik, hasilnya akan menduplikasi ini. Namun, untuk beberapa format wadah digital multimedia, file akhir diizinkan, dan perintah cat menawarkan cara yang efektif untuk menambahkan file. Aliran video dapat menjadi contoh file penting yang dapat digabungkan oleh perintah cat tanpa masalah, misalnya, format aliran program DV (Digital Video) dan MPEG (MPEG-2 dan MPEG-1), yang pada dasarnya adalah aliran paket sederhana. Opsi dalam Perintah Cat ref: [1]

DETAIL