Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Menggunakan Perintah xargs di Linux

Posted on September 16, 2023

xargs adalah perintah yang memungkinkan Anda mengirim output dari satu perintah sebagai parameter ke perintah lain, membuat perintah seperti echo, rm, dan mkdir menerima input standar sebagai argumen. xargs dapat digunakan dengan perintah lain seperti wc untuk menghitung kata, karakter, dan baris dengan mudah dalam banyak file. xargs dapat digunakan untuk menyalin file ke beberapa lokasi, menghapus file di direktori bersarang, dan membuat file arsip menggunakan perintah find.

Perlu merangkai beberapa perintah Linux, tetapi salah satunya tidak menerima input yang disalurkan? xargs adalah perintah untuk Anda.

Mengapa Menggunakan Perintah xargs?

Perintah xargs digunakan untuk membangun alur eksekusi menggunakan aliran data standar. Dengan kata lain, Anda dapat menggunakan xargs untuk mengirim output dari satu perintah ke perintah lain sebagai parameter.

Semua utilitas Linux standar memiliki tiga aliran data yang terkait dengannya. Mereka adalah aliran masukan standar (stdin), aliran keluaran standar (stdout), dan aliran kesalahan standar (stderr). Dengan menggunakan xargs kita dapat membuat perintah seperti echo, rm, dan mkdir menerima input standar sebagai argumen.

Aliran ini berfungsi dengan teks. Kami mengirimkan masukan (stdin) ke perintah menggunakan teks, dan respons (stdout) ditulis ke jendela terminal sebagai teks. Pesan kesalahan juga ditulis ke jendela terminal sebagai teks (stderr).

Salah satu fitur hebat sistem operasi Linux dan Unix adalah kemampuan untuk menyalurkan output stdout dari satu perintah ke input stdin dari perintah kedua. Perintah pertama tidak peduli bahwa outputnya tidak masuk ke jendela terminal, dan perintah kedua tidak peduli bahwa inputnya tidak berasal dari keyboard.

Meskipun semua perintah Linux memiliki tiga aliran standar, bukan semuanya menerima stdout perintah lain sebagai masukan ke stdin mereka. Itu berarti Anda tidak dapat menyalurkan masukan ke perintah tersebut.

Di situlah fungsi xargs. Kami telah membahas beberapa contoh perintah xargs yang berguna — silakan lewati sedikit. Contohnya belum tentu saling melengkapi.

Perintah xargs

xargs akan menerima input yang disalurkan. Itu juga dapat menerima input dari file. xargs menggunakan masukan itu sebagai parameter untuk perintah yang telah kami perintahkan untuk digunakan. Jika kita tidak memberi tahu xargs untuk bekerja dengan perintah tertentu maka secara default akan menggunakan echo.

Kita dapat menggunakannya untuk mendemonstrasikan bagaimana xargs akan selalu menghasilkan satu baris keluaran, bahkan dari masukan multi-baris.

Jika kita menggunakan -1 ( daftar satu file per baris) opsi dengan ls, kita mendapatkan satu kolom nama file.

ls -1 ./*.sh

Ini mencantumkan file skrip shell di direktori saat ini.

Kami mendapatkan satu kolom seperti yang diharapkan. Jika kita menyalurkannya melalui xargs apa yang kita dapatkan?

ls -1 ./*.sh | xargs

Outputnya ditulis ke jendela terminal, sebagai satu aliran teks yang panjang.

Kemampuan inilah yang memungkinkan xargs memasukkan parameter ke perintah lain.

Menggunakan xargs Dengan wc

Kita dapat menggunakan xargs untuk dengan mudah membuat wc menghitung kata, karakter, dan baris dalam beberapa file.

ls *.halaman | xargs wc

Inilah yang terjadi:

ls mencantumkan file *.page dan meneruskan daftar tersebut ke xargs. xargs meneruskan nama file ke wc. wc memperlakukan nama file seolah-olah telah menerimanya sebagai parameter baris perintah.

Statistik untuk setiap file ditampilkan bersama dengan total keseluruhan.

Menggunakan xargs Dengan Konfirmasi

Kita dapat menggunakan opsi -p (interaktif) agar xargs meminta konfirmasi kepada kami bahwa kami dengan senang hati melanjutkannya.

Jika kami meneruskan serangkaian nama file untuk menyentuh, melalui xargs, sentuh akan membuat file untuk kita.

echo 'satu dua tiga' | xargs -p touch

Perintah yang akan dijalankan ditampilkan dan xargs menunggu kita merespons dengan mengetikkan “y” atau “Y”, atau “n” atau “N”, dan menekan Enter.

Jika Anda cukup menekan Enter, maka diperlakukan sebagai “n”. Perintah ini hanya dijalankan jika Anda mengetik “y” atau “Y”.

Kami menekan “y” dan menekan Enter. Kita dapat menggunakan ls untuk memeriksa apakah file telah dibuat.

ls satu dua tiga

Menggunakan xargs Dengan Banyak Perintah

Kita dapat menggunakan beberapa perintah dengan xargs dengan menggunakan opsi -I (argumen awal).

Opsi ini mendefinisikan “string pengganti”. Di mana pun token untuk string pengganti muncul di baris perintah, nilai yang diberikan ke xargs akan disisipkan.

Mari gunakan perintah pohon untuk melihat subdirektori dari direktori saat ini. Opsi -d (direktori) menyebabkan pohon mengabaikan file dan hanya melaporkan direktori.

tree -d

Ada satu subdirektori bernama “gambar.”

Dalam file bernama “directories.txt”, kami memiliki nama beberapa direktori yang kami inginkan telah dibuat. Kita dapat melihat isinya menggunakan direktori cat.

cat.txt

Kita akan menggunakan ini sebagai data input untuk xargs. Perintah yang akan kita gunakan adalah ini:

cat direktori.txt | xargs -I % sh -c 'echo %; mkdir %'

Direktori terdaftar satu per satu.

Kita dapat menggunakan pohon sekali lagi untuk memverifikasi direktori telah dibuat.

tree -d

Menyalin File Ke Beberapa Lokasi

Kita dapat menggunakan xargs untuk memungkinkan kita menyalin file ke beberapa lokasi dengan satu perintah.

Kita akan pergi untuk menyalurkan nama dua direktori ke xargs sebagai parameter input. Kami akan memberi tahu xargs untuk hanya meneruskan salah satu parameter ini pada satu waktu ke perintah yang digunakannya.

Dalam hal ini, perintahnya adalah cp. Jadi efeknya adalah memanggil cp dua kali, setiap kali dengan salah satu dari dua direktori sebagai parameter baris perintah. Parameter xargs yang memungkinkan hal ini terjadi adalah opsi -n (angka maksimal). Kami akan mengatur ini menjadi satu.

Kami juga menggunakan opsi -v (verbose) dengan cp sehingga melaporkan apa yang terjadi.

echo ~/Backups/ ~/Documents/page-files/ | xargs -n 1 cp -v ./*.page

File disalin ke dua direktori, satu direktori pada satu waktu. cp melaporkan setiap tindakan penyalinan file sehingga kita dapat melihatnya terjadi.

Menghapus File di Direktori Bersarang

Jika nama file memiliki spasi dan karakter aneh di dalamnya—seperti karakter baris baru— xargs tidak akan dapat menafsirkannya dengan benar. Kita dapat mengatasi masalah tersebut dengan menggunakan opsi -0 (null terminator). Ini memberitahu xargs untuk menggunakan karakter null sebagai pembatas terakhir untuk nama file.

Kita akan menggunakan find dalam contoh ini. find memiliki opsi sendiri untuk menangani spasi dan karakter aneh dalam nama file. Ini adalah opsi -print0 (nama lengkap, karakter nol).

find . -nama "*.png" -ketik f -print0 | xargs -0 rm -v -rf "{}"

Ini rusak seperti ini:

find . -name “*.png”: find akan mencari dari direktori saat ini “.” untuk objek dengan nama yang cocok dengan “*.png” yaitu file (ketik -f). -print0: nama akan diakhiri dengan karakter nol, dan spasi serta karakter aneh akan dipenuhi. xargs -0: xargs juga akan menganggap nama file diakhiri dengan null, dan spasi serta karakter aneh tidak akan menimbulkan masalah. rm -v -rf “{}”: rm akan bertele-tele dan melaporkan apa yang terjadi (-v). Ini akan menjadi rekursif (-r) dan memeriksa subdirektori bersarang, dan akan menghapus file tanpa disuruh (-f). “{}” diganti dengan setiap nama file.

Semua subdirektori dicari, dan file yang cocok dengan pola pencarian akan dihapus.

Menghapus Direktori Bersarang

Misalnya kita ingin menghapus sekumpulan subdirektori bersarang. tree akan membiarkan kita melihatnya.

tree -d
find . -nama "level_one" -ketik d printo | xargs -o rm -v -rf "{}"

Perintah ini akan menggunakan find untuk mencari secara rekursif dalam direktori saat ini. Target pencariannya adalah direktori bernama “level_one”. Nama direktori diteruskan melalui xargs ke rm.

Satu-satunya perubahan signifikan antara perintah ini dan perintah sebelumnya adalah, istilah pencarian adalah nama direktori paling atas, dan -type d memberitahu find untuk mencari direktori, bukan file.

Nama dari setiap direktori dicetak saat dihapus. Kita dapat memeriksa dengan pohon :

tree -d

Semua subdirektori bersarang dihapus.

Menghapus Semua File, Kecuali Satu Jenis File

Kita dapat menggunakan find, xargs dan rm untuk menghapus semua file selain dari satu jenis yang ingin kita pertahankan. Ini sedikit berlawanan dengan intuisi, tapi kami memberikan nama jenis file yang ingin kami simpan, bukan nama file yang ingin kami hapus.

Opsi -not memberitahu find untuk mengembalikan nama file yang tidak cocok dengan pencarian pola. Kami menggunakan opsi -I (argumen awal) dengan xargs sekali lagi. Kali ini token pengganti string yang kita definisikan adalah “{}”. Ini akan berperilaku persis sama dengan token replace-string yang kita buat sebelumnya, yang kebetulan merupakan “%”.

find . -ketik f -bukan - nama "*.sh" -print0 | xargs -0 -I {} rm -v {}

Kita bisa mengeceknya dengan ls. Satu-satunya file yang tersisa di direktori adalah file yang cocok dengan pola pencarian “*.sh”.

ls -l

Membuat File Arsip Dengan Xargs

Kita dapat menggunakan find untuk mencari file dan meneruskannya melalui xargs ke tar, untuk membuat file arsip .

Kami akan mencari di direktori saat ini. Pola pencariannya adalah “*.page” jadi kita akan mencari file “.page”.

find ./ - name "*.page" -type f -print0 | xargs -0 -tar -cvzf page_files.tar.gz

File terdaftar seperti yang diharapkan, saat file arsip dibuat.

Mediator Data

Terkadang Anda memerlukan sedikit perancah saat Anda menumpuk semuanya. xargs menjembatani kesenjangan antara perintah yang dapat mengeluarkan informasi dan perintah yang tidak dibuat untuk menerimanya.

Baik xargs maupun find memiliki banyak opsi. Anda dianjurkan untuk memeriksa halaman manual mereka untuk mempelajari lebih lanjut.

Terbaru

  • Android Maze Figure: Koleksi Baru Google yang Bikin Penggemar Bergairah!
  • Google Update Besar-besaran Desember 2025: Apa yang Akan Memengaruhi Pengalaman Anda?
  • Masih Pusing Hitung Gaji Manual? Waktunya Pakai Aplikasi HR
  • Apa Itu Dustruco? Ini Pengertian dan Cara Pasangnya di HP Kalian
  • Apa Itu Aplikasi Dooie Live? Ini Pengertian dan Cara Pakai Aplikasinya untuk Cari Jodoh
  • Apa Itu Battle Emote Jefri Nichol dan Om Telolet Om di MLBB? Ini Penjelasannya
  • Apa itu Game Luna Mobile dan Bagaimana Cara Menangnya?
  • Apa Itu Kompensasi Sistem Trail Mobile Legends? Ini Penjelasan dan Cara Klaim Hadiahnya
  • Apa Itu Update Google Pixel 2 Desember 2025? Ini Penjelasannya!
  • Ini Cara Reset Desil di Aplikasi Cek Bansos Biar Valid (Update Januari 2026)
  • Apa Itu EZNET Wireless dan Fiber Optic? Ini Perbedaan dan Pengertian Lengkapnya
  • Pengertian Rework Magic Wheel dan Rank Mythic Eternal: Apa itu Perubahan Sistem Baru Mobile Legends?
  • Apa Itu Diamond Combo? Pengertian Game Puzzle Viral yang Katanya Bisa Hasilkan Cuan
  • Apa Itu Showbox? Pengertian, Fungsi, dan Cara Menggunakannya di Android
  • Cara Mengatasi Fitur Monet Facebook Pro Tiba-tiba Hilang
  • Google Bikin Kejutan! Pixel 10 Diskon Gila-gilaan di YouTube Premium
  • Apa Itu Google CC? Ini Pengertian Agen Produktivitas AI Eksperimental Terbaru
  • Apa Itu Ultras Seblak di eSport? Pengertian dan Fenomena Baru Suporter eSport
  • Android 16: Animasi Folder Baru yang Mengubah Cara Kita Berinteraksi!
  • Android 16: Notifikasi Lokasi ‘Blue Dot’ – Fitur Baru yang Perlu Kalian Ketahui!
  • Apa Itu Risiko Auto Click di Event Spongebob Mobile Legends? Ini Penjelasannya
  • Apa Itu Fitur Eksperimental Windows? Ini Pengertian dan Cara Menonaktifkannya
  • Apa Itu Android 16 Beta 1? Ini Pengertian dan Fitur Terbarunya
  • Belum Tahu? Ini Trik Supaya Bisa Dapat Skin Patrick Mobile Legends dengan Harga Murah
  • Pixel Desember 2025: Update Besar Siap Meluncur, Apa yang Baru?
  • Apa Itu HYFE XL Prioritas? Ini Pengertian, FUP, dan Realita Kecepatannya
  • Pengertian Render dan Convert: Apa Bedanya dalam Video Editing?
  • Cara Mengatasi Aplikasi Office yang Terus Muncul dan Menerapkan Perubahan Pengaturan Privasi
  • Pixel Launcher Mendapatkan Sentuhan Google Search Baru!
  • Penyebab Aplikasi Wondr BNI Tidak Bisa Dibuka
  • Apa Itu AI Kill Switch di Firefox? Ini Pengertian dan Detail Fitur Terbarunya
  • Apa Itu Platform Modular Intel Alder Lake N (N100)? Ini Pengertian dan Spesifikasinya
  • Apa Itu Armbian Imager? Pengertian Utilitas Flashing Resmi untuk Perangkat ARM Kalian
  • Apa Itu OpenShot 3.4? Pengertian dan Fitur LUT Terbaru untuk Grading Warna
  • Flatpak 1.16.2: Sandbox Baru untuk GPU Intel Xe dan VA-API
  • Apa Itu Elestio Get A Team? Ini Pengertian Karyawan AI Digital
  • Apa itu RunPod? Ini Pengertian dan Tutorial Cara Deploy Pod Pertamamu
  • Apa Itu Migrasi Pod di RunPod? Ini Pengertian dan Cara Kerjanya
  • Loading Model AI Lama? Coba Fitur Cached Models RunPod Ini, Hemat Waktu & Biaya!
  • Replicate Diakuisisi Cloudflare? Tenang, Ini Justru Kabar Baik Buat Developer AI
  • Apa Itu Kerentanan UEFI? Pengertian Celah Keamanan DMA pada Booting Awal
  • Apa Itu Serangan Siber Infrastruktur Kritikal? Belajar dari Kasus Peretasan Air Bersih Denmark
  • Apa Itu Error Update MSMQ di Windows 10? Ini Penjelasan Lengkap dan Solusinya
  • Apa Itu “I Am Not a Robot – reCAPTCHA Verification ID: 2165”? Ini Pengertian dan Bahayanya
  • Apa Itu Serangan Clop Ransomware pada CentreStack? Ini Pengertian dan Dampaknya
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2025 emka.web.id | Design: Newspaperly WordPress Theme