GNU/Linux >> Belajar Linux >  >> Linux

Tampilan praktis dari perintah xargs

Tugas sehari-hari sysadmin selalu berbeda untuk setiap orang; namun, ada tugas sederhana yang dijalankan secara merata pada sistem terkelola. Pada hari-hari ketika ruang disk menjadi faktor risiko di zaman administrator, sangat penting untuk menemukan direktori atau sistem file yang akan di-debug.

Saat ini, terutama di mesin virtual, sama pentingnya untuk memiliki sistem terkelola yang sehat dan dengan ruang yang tersedia untuk pelaksanaan proses mereka dan masuk ke file log mereka.

[ Anda mungkin juga menyukai: Skrip Linux:3 cara untuk loop while di Bash ]

Cara terbaik untuk memulai adalah dengan menggunakan perintah paling sederhana dengan menghubungkan outputnya sebagai input ke eksekusi baru, membentuk apa yang dikenal sebagai one-liner. Yaitu, menggunakan penerjemah baris perintah untuk membaca output standar dari suatu perintah dan meletakkannya sebagai variabel input dari perintah berikutnya, untuk ini, perintah xargs membantu menerima variabel itu dan menjalankannya.

Lihat contoh praktisnya:

Tiket RH0502201-1:Server produksi prodenv mengirimkan peringatan "ruang disk rendah pada sistem file root". Pembersihan sistem file diminta.

  1. Akses server dan periksa ruang di /filesystem :


# df -h /

Filesystem                     Size  Used  Avail Use% Mounted on

/dev/mapper/prodenv--vg-root   720G  720G  0     100% /
  1. Ubah ke direktori root, daftar direktori, dan untuk menghitung ruang disk yang digunakan di setiap direktori, gunakan pipe dan xargs untuk mengirim ls perintah output ke du perintah:

# ls | xargs du -sk
  1. Dengan pipe lagi, gunakan perintah sort untuk membuat daftar keluaran dari ruang disk terendah hingga tertinggi yang digunakan dalam direktori:


# ls | xargs du -sk | sort -n
  1. Untuk kasus ini, hanya direktori dengan ruang disk paling banyak yang diperlukan, jadi kami dapat membatasi daftar hingga lima direktori terakhir dalam daftar. Menggunakan pipa lain dan perintah ekor:


# ls | xargs du -sk | sort -n | tail -5

Catatan : Jika Anda ingin menghindari pesan kesalahan di mana du perintah tidak dapat mengakses, kirim output kesalahan standar ke perangkat /dev/null:


# ls | xargs du -sk 2> /dev/null | sort -n | tail -5
  1. Dengan daftar direktori yang ditentukan, gunakan AWK untuk membuat daftar direktori baru yang diurutkan, kolom dua dari daftar asli:


# ls | xargs du -sk 2> /dev/null | sort -n | tail -5 | awk '{ print $2 }'
  1. Daftar yang diurutkan dimasukkan kembali sebagai variabel ke du untuk menampilkan ruang yang digunakan dalam format yang dapat dibaca manusia. Gunakan pipe lain dan xargs :


# ls | xargs du -sk 2> /dev/null | sort -n | tail -5 | awk '{ print $2 }' | xargs du -sh
  1. Validasi kelayakan untuk menghapus atau mengompresi file yang membebani sistem file untuk mengosongkan ruang disk sebanyak mungkin.

Mungkin Anda dapat menghindari langkah 5 dan 6 dan melakukan pembersihan secara langsung; namun, dalam banyak kasus, direktori ini milik beberapa aplikasi dan memberi tahu  . yang bertanggung jawab salah satu pihak untuk melakukan pembersihan atau hanya sebagai bukti dari proses yang dijalankan untuk dokumentasi penyelesaian masalah.

Akhirnya, one-liner our kami terlihat seperti berikut:


​​​​​​​# ls | xargs du -sk 2> /dev/null | sort -n | tail -5 | awk '{ print $2 }' | xargs du -sh

satu kalimat . ini adalah bagian dari gudang senjata saya yang digunakan dalam tugas sehari-hari sebagai sysadmin, saya harap Anda merasa berguna. Bagaimana dengan kamu? Apa satu kalimat apakah Anda memiliki lengan baju Anda?

[ Dapatkan ebook gratis ini:Mengelola kluster Kubernetes Anda untuk boneka. ]


Linux
  1. Kuasai perintah Linux ls

  2. 8 Contoh Praktis Perintah Linux Xargs untuk Pemula

  3. Contoh Praktis Perintah Unzip di Linux

  1. Pengantar perintah diff

  2. 5 Contoh Praktis Perintah dd di Linux

  3. Perintah cari di Linux

  1. Cara Menggunakan Perintah Linux xargs

  2. Perintah Xargs di Linux

  3. 6 Cara Terbaik untuk Melihat File di Linux