Saat menggunakan baris perintah, Anda dapat langsung meneruskan output dari satu program (misalnya alat yang menghasilkan beberapa informasi sistem atau statistik) sebagai input untuk program lain (seperti penyaringan teks atau alat pencarian pola seperti grep, sed atau awk, untuk diproses lebih lanjut), menggunakan pipeline.
Baca Juga :Pelajari Dasar-dasar Cara Kerja Pengalihan I/O (Input/Output) Linux
Dua dari utilitas baris perintah paling penting yang dapat digunakan dengan pipeline untuk membangun baris perintah adalah:
xargs
– membaca aliran data dari input standar, kemudian menghasilkan dan mengeksekusi baris perintah.tee
– membaca dari input standar dan menulis secara bersamaan ke output standar dan satu atau banyak file. Ini lebih merupakan perintah pengalihan.
Dalam artikel sederhana ini, kami akan menjelaskan cara membuat dan menjalankan beberapa perintah dari input standar menggunakan pipa , kaos dan xargs perintah di Linux.
Sintaks paling sederhana untuk menggunakan pipa , yang mungkin sudah Anda lihat di perintah di banyak tutorial Linux, adalah sebagai berikut. Tetapi Anda dapat membuat baris perintah yang lebih panjang dengan beberapa perintah.
$ command1 args | command2 args OR # command1 args | command2 args | command3 args ...
Di bawah ini adalah contoh penggunaan pipeline untuk meneruskan output perintah dmesg ke perintah head.
$ dmesg | head
Cara Menggunakan xargs untuk Menjalankan Perintah
Dalam contoh ini, perintah kedua mengubah output multi-line menjadi satu baris menggunakan xargs.
$ ls -1 *.sh $ ls -1 *.sh | xargs
Untuk menghitung jumlah baris/kata/karakter di setiap file dalam daftar, gunakan perintah di bawah ini.
$ ls *.sh | xargs wc -l #count number of lines in each file $ ls *.sh | xargs wc -w #count number of words in each file $ ls *.sh | xargs wc -c #count number of characters in each file $ ls *.sh | xargs wc #count lines, words and characters in each file
Perintah di bawah ini menemukan dan secara rekursif menghapus direktori bernama All
di direktori saat ini.
$ find . -name "All" -type d -print0 | xargs -0 /bin/rm -rf "{}"
Perintah find dengan opsi -print0
action memungkinkan pencetakan path direktori lengkap pada output standar, diikuti dengan karakter null dan -0 xargs
flag berhubungan dengan spasi dalam nama file.
Anda dapat menemukan perintah xargs praktis lainnya contoh penggunaan dalam artikel ini:
- Cara Menyalin File ke Banyak Direktori di Linux
- Ganti Nama Semua File dan Nama Direktori menjadi Huruf Kecil di Linux
- 4 Cara Batch Mengonversi PNG ke JPG dan Sebaliknya
- 3 Cara Menghapus Semua File dalam Direktori Kecuali Satu atau Beberapa File Berekstensi
Cara Menggunakan Tee dengan Perintah di Linux
Contoh ini menunjukkan cara mengirim output perintah ke output standar dan menyimpan ke file; perintah di bawah ini memungkinkan Anda untuk melihat proses yang berjalan teratas berdasarkan penggunaan memori dan CPU tertinggi di Linux.
$ ps -eo cmd,pid,ppid,%mem,%cpu --sort=-%mem | head | tee topprocs.txt $ cat topprocs.txt
Untuk menambahkan data dalam file yang ada, berikan -a
bendera.
$ ps -eo cmd,pid,ppid,%mem,%cpu --sort=-%mem | head | tee -a topprocs.txt
Anda dapat menemukan informasi lebih lanjut di kaus dan xargs halaman manual.
$ man xargs $ man tee
Itu saja! Jangan lupa untuk membaca artikel khusus kami:A – Z Perintah Linux – Ikhtisar dengan Contoh.
Dalam artikel ini, kami menjelaskan cara membuat baris perintah menggunakan pipeline; xargs dan perintah tee. Anda dapat mengajukan pertanyaan atau menyampaikan pendapat melalui formulir masukan di bawah.