GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara Menghapus baris 'n' Pertama/Terakhir dari output perintah di Shell?

Salah satu rekan saya mengajukan pertanyaan – Bagaimana cara menghapus baris 'n' Pertama/Terakhir dari output perintah di Shell? Misalnya, ia ingin memangkas semua baris yang tidak perlu dari output perintah – systemctl dan cetak hanya baris yang diperlukan. Perintah systemctl berisi beberapa baris generik di akhir output seperti yang ditunjukkan di bawah ini. Yah, dia ingin menghapus garis-garis itu dan mencetak sisanya.

Di bawah ini adalah perintah sebelum memangkas baris yang tidak perlu.

$systemctl -a --type=service
 ......
 systemd-tmpfiles-setup.service loaded active exited Create Volatile Files and Directories
 systemd-udev-trigger.service loaded active exited udev Coldplug all Devices
 systemd-udevd.service loaded active running udev Kernel Device Manager
 systemd-update-done.service loaded active exited Update is Completed
 systemd-update-utmp-runlevel.service loaded inactive dead Update UTMP about System Runlevel Changes
 systemd-update-utmp.service loaded active exited Update UTMP about System Boot/Shutdown
 systemd-user-sessions.service loaded active exited Permit User Sessions
 systemd-vconsole-setup.service loaded active exited Setup Virtual Console
 tuned.service loaded active running Dynamic System Tuning Daemon

LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.

92 loaded units listed.
To show all installed unit files use 'systemctl list-unit-files'.

Pada output di atas, dia hanya ingin membuat daftar layanan dengan menghapus 7 baris terakhir (spasi juga merupakan satu baris).

Solusi :Gunakan head perintah untuk menghapus 7 baris terakhir seperti yang ditunjukkan di bawah ini:

$ systemctl -a --type=service | head -n -7

Catatan :simbol - symbol sebelum 7, yang sangat penting.

Cara menghapus n pertama baris dari output perintah shell

Untuk menghapus n pertama garis dari output perintah shell gunakan tail . Contoh perintah di bawah ini menghapus 7 baris pertama dari output perintah shell.

Catatan :simbol + symbol sebelum 7, yang sangat penting.

$ systemctl -a --type=service | tail -n +7

Linux
  1. Cara Membuat Daftar Modul yang Dimuat atau Diaktifkan di PHP dari baris perintah

  2. Cara menghapus database mysql melalui perintah shell

  3. Cara memeriksa apakah ada perintah shell dari PHP

  1. Cara Menghapus File dan Direktori di Linux dari Command Line

  2. Bagaimana saya bisa mengulang output dari perintah shell?

  3. Bagaimana cara menjalankan perintah Vim dari shell?

  1. Bagaimana Cara Menetapkan Output Perintah Ke Variabel Shell?

  2. Bagaimana Cara Memulihkan Pekerjaan Latar Belakang Dari Shell Sebelumnya??

  3. Bagaimana Cara Menghapus Beberapa Baris Acak Dari File Teks Menggunakan Sed?