GNU/Linux >> Belajar Linux >  >> Linux

Cetak File Tanpa Komentar Dan Baris Kosong Di Linux

Saat Anda menampilkan kode sumber atau konten file konfigurasi dalam output standar menggunakan cat perintah, Anda akan melihat semua yang ada di file itu termasuk baris yang dikomentari dan kosong, bukan? Ya. Bagaimana jika Anda hanya ingin melihat baris yang tidak dikomentari, mengabaikan yang lainnya? Yah, dimungkinkan untuk mengabaikan baris yang dikomentari dan kosong dari output file. Dalam panduan singkat ini, kita akan melihat cara mencetak file tanpa komentar dan baris kosong di Linux. Ini berguna ketika Anda ingin meninjau file konfigurasi yang berisi banyak komentar dan baris kosong dengan cepat.

Apa itu Komentar dalam pemrograman komputer?

Jika Anda melihat kode sumber atau file konfigurasi, Anda akan melihat banyak baris dimulai dengan tanda bintang "*" atau hash "#" atau garis miring "/" atau tanda titik koma ";" . Baris ini dikenal sebagai Komentar . Dalam pemrograman komputer, komentar adalah deskripsi atau anotasi yang dapat dibaca manusia yang digunakan untuk memperjelas tujuan kode. Mereka membantu pengguna dan pemrogram lain untuk dengan mudah memahami apa yang dilakukan kode. Umumnya, komentar dan baris kosong akan diabaikan oleh compiler dan interpreter. Mereka hanya untuk programmer. Sintaks komentar bervariasi dalam bahasa pemrograman yang berbeda.

Sekarang mari kita lihat bagaimana mengecualikan atau melewatkan komentar dan baris kosong ini dan hanya menampilkan baris yang tidak dikomentari.

Mencetak file tanpa komentar dan baris kosong di Linux

Mari saya tunjukkan isi sources.list file sistem Ubuntu saya:

$ cat /etc/apt/sources.list

Contoh keluaran:

# deb cdrom:[Ubuntu 18.04.2 LTS _Bionic Beaver_ - Release amd64 (20190210)]/ bionic main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://it-mirrors.evowise.com/ubuntu/ focal main restricted
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://it-mirrors.evowise.com/ubuntu/ focal-updates main restricted
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://it-mirrors.evowise.com/ubuntu/ focal universe
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic universe
deb http://it-mirrors.evowise.com/ubuntu/ focal-updates universe
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://it-mirrors.evowise.com/ubuntu/ focal multiverse
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic multiverse
deb http://it-mirrors.evowise.com/ubuntu/ focal-updates multiverse
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://it-mirrors.evowise.com/ubuntu/ focal-backports main restricted universe multiverse
# deb-src http://in.archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu bionic partner
# deb-src http://archive.canonical.com/ubuntu bionic partner

deb http://it-mirrors.evowise.com/ubuntu/ focal-security main restricted
# deb-src http://security.ubuntu.com/ubuntu bionic-security main restricted
deb http://it-mirrors.evowise.com/ubuntu/ focal-security universe
# deb-src http://security.ubuntu.com/ubuntu bionic-security universe
deb http://it-mirrors.evowise.com/ubuntu/ focal-security multiverse
# deb-src http://security.ubuntu.com/ubuntu bionic-security multiverse

Apakah Anda melihat banyak baris yang dikomentari dengan karakter "#"? Itu membuat file kurang terbaca. Ini hanya file kecil, jadi bukan masalah besar. Tetapi ketika Anda membaca file konfigurasi yang sangat panjang, misalnya "httpd.conf" atau "php.ini", Anda harus melalui banyak komentar dan baris kosong dan agak membingungkan untuk menemukan baris mana yang aktif dan mana yang tidak.

Untuk memfilter semua komentar dan baris kosong agar tidak ditampilkan dalam keluaran file, gunakan grep perintah seperti di bawah ini:

$ grep "^[^#*/;]" /etc/apt/sources.list

Di sini,

  • ^ yang pertama karakter menunjukkan awal baris dalam file yang diberikan yaitu /etc/apt/sources.list .
  • [^#*/;] - akan menampilkan semua baris yang dimulai dengan karakter selain empat karakter ini "#" , "*" , "/" , ";" . Dengan kata lain, semua baris yang dimulai dengan karakter "#" , "*" , "/" , ";" akan dikeluarkan dari output.

Contoh keluaran dari perintah di atas:

deb http://it-mirrors.evowise.com/ubuntu/ focal main restricted
deb http://it-mirrors.evowise.com/ubuntu/ focal-updates main restricted
deb http://it-mirrors.evowise.com/ubuntu/ focal universe
deb http://it-mirrors.evowise.com/ubuntu/ focal-updates universe
deb http://it-mirrors.evowise.com/ubuntu/ focal multiverse
deb http://it-mirrors.evowise.com/ubuntu/ focal-updates multiverse
deb http://it-mirrors.evowise.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://it-mirrors.evowise.com/ubuntu/ focal-security main restricted
deb http://it-mirrors.evowise.com/ubuntu/ focal-security universe
deb http://it-mirrors.evowise.com/ubuntu/ focal-security multiverse

Lihat? Semua komentar dan baris kosong hilang. Sekarang hasilnya cukup mudah dibaca.

Lihat screenshot berikut:

Di sisi kiri, Anda melihat konten file dengan komentar dan baris kosong. Di sebelah kanan, semua komentar dan baris kosong diabaikan dengan "grep" perintah.

Saya lebih suka cara grep untuk memfilter baris yang tidak perlu ditampilkan di output. Anda juga dapat melakukannya dengan menggunakan awk dan sed perintah juga.

Untuk mencetak isi file kecuali semua komentar dan baris kosong dengan "awk" perintah, jalankan:

$ awk '$1 ~ /^[^;#]/' /etc/apt/sources.list

Contoh keluaran:

Untuk menampilkan baris dimulai tanpa komentar menggunakan "sed" perintah, jalankan:

$ sed -e '/^#/d' /etc/apt/sources.list

Untuk detail penggunaan lebih lanjut, lihat halaman manual perintah masing-masing.

$ man awk
$ man grep
$ man sed

Semoga membantu.


Linux
  1. Cara Melihat File Konfigurasi Tanpa Komentar di Linux

  2. Cara Mengarsipkan dan Mengompresi File di Linux

  3. Linux – Direktori Standar Dan/atau Umum Pada OS Unix/linux?

  1. Buat dan ekstrak file tar.gz dan tar.bz2 di ubuntu linux

  2. Memeriksa Repositori dan Logging Linux

  3. Linux Hapus File dan Direktori

  1. Memindahkan file di Linux tanpa mv

  2. Cetak Konten File Tanpa Baris Pertama Dan Terakhir?

  3. Cara Menemukan dan Menghapus Direktori dan File Kosong di Linux