Ini adalah cpipe perintah yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
cpipe - salin stdin ke stdout sambil menghitung byte dan melaporkan kemajuan
RINGKASAN
cpipe [-b bsize] [-vt] [-vr] [-vw] [-ngr] [-s kecepatan]
PILIHAN
-b ukuran buffer dalam kB,
1 nilai Int antara 1 dan oo.
Bawaan: `128'
-vt menunjukkan throughput.
-vr menunjukkan waktu baca.
-vw menunjukkan waktu penulisan.
-ngr tidak serakah baca. Jangan memaksakan buffer penuh saat membaca sebelum mulai menulis.
-s batas kecepatan throughput dalam kB/s,
1 Nilai ganda antara 1 dan oo.
DESKRIPSI
Pipa menyalin input standarnya ke output standarnya sambil mengukur waktu yang diperlukan
untuk membaca buffer input dan menulis buffer output. Jika satu atau lebih dari -vx pilihannya adalah
diberikan, statistik throughput rata-rata dan jumlah total byte yang disalin dicetak
ke keluaran kesalahan standar.
Tidak Serakah Baca
Biasanya, cpipe melakukan yang terbaik untuk benar-benar mengisi buffernya (opsi -b) sebelum dimulai
menulis. Namun dalam beberapa situasi, misalnya jika Anda berbicara dengan program interaktif melalui cpipe,
ini menghentikan komunikasi: program tersebut menunggu input yang tidak akan pernah dilihatnya,
karena inputnya macet di buffer cpipe. Tetapi cpipe itu sendiri tidak akan melihat lebih banyak input
sebelum program tidak merespon.
Untuk menyiasatinya, coba gunakan -ngr. Saat mengeluarkan panggilan baca, cpipe kemudian dipenuhi sebagai
segera setelah mendapat setidaknya satu byte. Alih-alih mengisi buffer, ia berhenti membaca dan
menulis apa pun yang didapatnya ke output. Perhatikan, bagaimanapun, bahwa pengukuran throughput akan
kurang tepat jika jumlah byte yang ditransfer dalam satu pasangan baca/tulis menjadi kecil,
karena cpipe akan menghabiskan waktu yang relatif lebih banyak untuk mengerjakan setiap byte.
Membatasi Throughput
Jika batas throughput ditentukan dengan opsi -s, cpipe panggilan kamu tidur(3) di antara
menyalin buffer, sehingga secara artifisial memperpanjang durasi siklus baca/tulis. Sejak
pada kebanyakan sistem ada waktu minimum tertentu usleep() tidur, misalnya 0.01 detik, itu adalah
tidak mungkin mencapai batas tinggi dengan ukuran buffer yang kecil. Dalam hal ini meningkatkan
ukuran penyangga (opsi -b) mungkin membantu. Namun, perlu diingat bahwa ini membatasi throughput
hanya rata-rata. Setiap buffer tunggal disalin secepat mungkin.
CONTOH
Perintah
tar cCf / - usr | cpipe -vr -vw -vt > /dev/null
menghasilkan output seperti
...
dalam: 19.541 md pada 6.4 MB/dtk (rata-rata 4.7 MB/dtk) 2.0 MB
keluar: 0.004ms pada 30.5GB/d (rata-rata 27.1GB/dtk) 2.0MB
melalui: 19.865 md pada 6.3MB/dtk (rata-rata 4.6MB/dtk) 2.0MB
...
Grafik pertama kolom menunjukkan waktu yang diperlukan untuk menangani satu buffer data (128kB secara default).
Panggilan baca membutuhkan waktu 19.541 md, panggilan tulis ke /dev/null hanya membutuhkan waktu 0.004 md dan dari
awal baca sampai akhir tulis, butuh 19.865ms.
Grafik kedua kolom menunjukkan hasil membagi ukuran buffer (128kB secara default) dengan
kali di kolom pertama.
Grafik ketiga kolom berisi rata-rata atas semua nilai yang diukur dari awal
program.
Akhirnya, terakhir kolom menunjukkan jumlah total byte yang ditransfer, yang tentu saja
sama untuk membaca dan menulis.
Gunakan cpipe online menggunakan layanan onworks.net