Perintah Xargs di Linux dengan contoh yang berguna

Perintah Xargs di Linux dengan contoh yang berguna

Xargs adalah arahan Linux/Unix yang berkuasa untuk membina dan melaksanakan baris arahan dari input standard. Ia mengambil output perintah dan lulus sebagai hujah perintah lain. Xargs Mengambil Input Standard, Dibawah oleh Kosah atau Newline, dan melaksanakan arahan satu atau lebih kali dengan sebarang argumen yang diikuti oleh item. Garis kosong pada input standard diabaikan.

Sintaks

Xargs [Option] ... Command [Awal-Args] .. 

Di sini arahan dilaksanakan dengan argumen arg awal dan lebih banyak argumen yang dibaca dari input.

Pilihan Perintah XArgs

Perintah Xargs menyediakan bilangan argumen baris arahan yang terhad tetapi cukup untuk menggunakan ciri -cirinya.

  • -0, --null - Barang -barang tersebut dipisahkan oleh ruang kosong, bukan ruang putih
  • -A, --Arg-file = fail - Baca hujah dari fail, bukan input standard.
  • -d, --delimiter = watak - Item dalam aliran input dipisahkan oleh watak, bukan ruang putih
  • -Akhir - Tetapkan rentetan sebagai Log masuk EOF. Sekiranya rentetan dijumpai, selebihnya akan diabaikan.
  • -L,--max-lines = max-lines - Nyatakan bilangan maksimum baris (tidak kosong) untuk diambil sebagai input pada baris arahan
  • -n,--max-args = max-args - Tentukan argumen maksimum bagi setiap baris arahan
  • -P,--max-procs = max-procs - Tentukan proses maksimum untuk dijalankan pada satu masa
  • -p, --interaktif - Jalankan proses interaktif dengan cepat sebelum menjalankan arahan
  • -r, --no-run-if-empty - Jangan jalankan arahan jika argumen input kosong.
  • -t, --Verbose - Cetak semua arahan pada skrin yang melaksanakannya

Contoh perintah XArgs

Contoh 1. Salin sebilangan besar fail ke folder lain.

Beberapa kali kami perlu menyalin senarai panjang fail, dalam hal ini perintah CP gagal dengan ralat "Senarai Argumen terlalu lama". Kita boleh menggunakan Xargs untuk melakukan tugas itu.

cari / sandaran / -type f | xargs -n1 -i cp /var/www/sandaran/  
Contoh 2: Padam pelbagai fail dari folder.

Beberapa kali kami perlu memadam sebilangan besar fail dari folder. Contoh di bawah akan memadamkan semua .Fail log dari /var /direktori log.

cari/var/www/tmp/-type f | Xargs Rm -f  

Perintah di atas akan gagal mengeluarkan fail dengan ruang yang dinamakan. Untuk mengendalikan ruang dalam perintah Xargs cuba di bawah arahan.

cari/var/www/tmp/-type f -print0 | xargs -0 rm -f  
Contoh 3: Kira bilangan baris dalam pelbagai fail.

Contoh di bawah akan mengira bilangan baris untuk masing -masing .Fail txt dalam /opt direktori dan subdirektori

Cari /Opt -Name "*.txt "| xargs wc -l  

Untuk mengendalikan fail yang mempunyai ruang di sana, gunakan arahan berikut.

cari / opt / -name "*.log "-print0 | xargs -0 wc -l  
Contoh 4: Buat sandaran semua fail konfigurasi.

Sekiranya anda ingin membuat sandaran semua fail konfigurasi (lanjutan .conf) Dalam sistem anda, gunakan arahan di bawah.

Cari / -Name "*.conf "| xargs tar czf config.tar.Gz  
ls -l config.tar.Gz  -RW-R-R--. 1 akar akar 193310 1 Apr 13:26 konfigurasi.tar.Gz 
Contoh 5. Gunakan Delimeter Custome dengan Xargs.

Kita juga boleh menggunakan delemeter tersuai dengan perintah Xargs, secara lalai ia menggunakan ruang dan baris baru sebagai delimeter. Parameter Gunakan -D untuk menentukan Delimeter.

echo "1,2,3,4,5" | xargs -d, echo  

Pengeluaran:

1 2 3 4 5 
Contoh 6: Tunjukkan output dalam garis ramping dengan Xargs.

Dalam Contoh 5 Ouput ditunjukkan dalam satu baris, kita juga boleh menentukan untuk menunjukkan setiap output dalam garis seprate.

echo "1,2,3,4,5" | xargs -d, -l 1 echo  

Pengeluaran:

1 2 3 4 5 
Contoh 7: Mengendalikan ruang kosong dalam nama fail atau jalan.

Untuk mengendalikan ruang dalam nama penggunaan -print0 dengan cari perintah dan -0 dengan perintah xargs sebagai parameter.

cari /tmp -print0 | xargs -0 -l 1 echo