این دستور pv است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
pv - نظارت بر پیشرفت داده ها از طریق یک لوله
خلاصه
pv [گزینه] [فایل] ...
pv [-h|-V]
شرح
pv با دادن اطلاعاتی مانند زمان، پیشرفت داده ها را از طریق خط لوله نشان می دهد
سپری شده، درصد تکمیل شده (با نوار پیشرفت)، نرخ توان جاری، کل داده ها
منتقل شده و ETA.
برای استفاده از آن، آن را با گزینه های مناسب در خط لوله بین دو فرآیند قرار دهید.
ورودی استاندارد آن به خروجی استاندارد خود منتقل می شود و پیشرفت خواهد داشت
روی خطای استاندارد نشان داده شده است.
pv هر ارائه شده را کپی می کند فایل به نوبه خود به خروجی استاندارد (- به معنای ورودی استاندارد)، یا اگر
نه فایلs مشخص شده اند فقط ورودی استاندارد کپی می شود. این همان رفتار است
گربه(1).
یک مثال ساده برای مشاهده سرعت انتقال یک فایل با استفاده از آن nc(1):
pv پرونده | nc -w 1 somewhere.com 3000
یک مثال مشابه، انتقال یک فایل از یک فرآیند دیگر و ارسال اندازه مورد انتظار
به pv:
گربه پرونده | pv -s 12345 | nc -w 1 somewhere.com 3000
یک مثال پیچیده تر با استفاده از خروجی عددی برای تغذیه به گفتگو(1) برنامه برای a
نمایش پیشرفت تمام صفحه:
(قطر cf - . \
| pv -n -s $(دو -sb . | بیدار '{چاپ $1}') \
| از gzip -9 > out.tgz) 2> و 1 \
| گفتگو --پیمانه 'پیش رفتن' 7 70
گرفتن تصویر از دیسک، پرش از خطاها:
pv -EE / dev / sda و > disk-image.img
نوشتن یک تصویر بر روی دیسک:
pv disk-image.img > / dev / sda و
صفر کردن دیسک:
pv < /dev/zero > / dev / sda و
توجه داشته باشید که اگر اندازه ورودی قابل محاسبه نیست و خروجی یک دستگاه بلوک است، پس
اندازه دستگاه بلوک استفاده خواهد شد و pv به طور خودکار در آن اندازه متوقف می شود
if -S داده شده بود.
(فقط لینوکس): مشاهده توصیفگر فایل 3 که توسط فرآیند 1234 دیگر باز می شود:
pv -d 1234:3
(فقط لینوکس): تماشای تمام توصیفگرهای فایل استفاده شده توسط فرآیند 1234:
pv -d 1234
OPTIONS
pv گزینه های زیادی را می گیرد که به سوئیچ های نمایشگر، اصلاح کننده های خروجی و
گزینه های عمومی
نمایش دادن سوئیچ ها
اگر هیچ کلید نمایشی مشخص نشده باشد، pv طوری رفتار می کند که انگار -p, -t, -e, -rو -b بوده است
داده شده (یعنی همه چیز به جز نرخ متوسط روشن است). در غیر این صورت، فقط آن نمایش داده می شود
انواعی که به صراحت روشن هستند نشان داده خواهند شد.
-پ، --پیش رفتن
نوار پیشرفت را روشن کنید. اگر ورودی استاندارد یک فایل نیست و اندازه ای داده نشده است
(با -s اصلاح کننده)، نوار پیشرفت نمی تواند نشان دهد که چقدر به اتمام رسیده است
انتقال است، بنابراین فقط به چپ و راست حرکت می کند تا نشان دهد که داده است
در حال حرکت.
-t، --تایمر
تایمر را روشن کنید این کل زمان سپری شده را نشان می دهد pv بوده است
در حال اجرا برای
-ه ، --تا
تایمر ETA را روشن کنید. این تلاش میکند تا بر اساس انتقال قبلی حدس بزند
نرخ ها و اندازه کل داده ها، چه مدت قبل از تکمیل خواهد بود. این گزینه
اگر اندازه کل داده ها قابل تعیین نباشد تأثیری نخواهد داشت.
-من، --فینیتا
تایمر ETA را روشن کنید، اما به جای آن، زمان محلی تخمینی ورود را نمایش دهید
زمان باقی مانده زمانی که زمان تخمینی بیش از 6 ساعت در آینده باشد، تاریخ است
نیز نشان داده شده است.
-r، --نرخ
نرخ شمارنده را روشن کنید. با این کار نرخ فعلی انتقال داده نمایش داده می شود.
-آ، -- نرخ متوسط
شمارنده نرخ متوسط را روشن کنید. با این کار میانگین نرخ داده ها نمایش داده می شود
انتقال تا کنون
-ب، -- بایت
شمارشگر کل بایت را روشن کنید. این مقدار کل داده ها را نمایش می دهد
تا کنون منتقل شده است.
-T، -- درصد بافر
نمایش درصد بافر انتقال را روشن کنید. این درصد نشان می دهد
بافر انتقال در حال استفاده - اما اخطار زیر را ببینید %T در قالب بندی بخش
زیر کلیک کنید.
-آ، --آخرین نوشته شده NUM
آخرین را نشان دهید NUM بایت نوشته شده - اما اخطار زیر را ببینید %nA در قالب بندی
بخش زیر
-اف، --قالب FORMAT
گزینه ها را نادیده بگیرید -p, -t, -e, -r, -a, -b, -Tو -Aو در عوض از قالب استفاده کنید
رشته FORMAT برای تعیین فرمت خروجی را ببینید قالب بندی بخش زیر
-n، -- عددی
خروجی عددی به جای ارائه یک نشانه بصری از پیشرفت، pv خواهد داد
درصد صحیح، یک در هر خط، در خطای استاندارد، مناسب برای لوله کشی (از طریق
تغییر مسیر پیچیده) به گفتگو(1). توجه داشته باشید که -f اگر لازم نیست -n is
مورد استفاده قرار گرفته.
توجه داشته باشید که اگر -- عددی در حال استفاده است، سپس اضافه می شود -- بایت باعث تعداد
بایتهایی که تا کنون پردازش شدهاند تا به جای درصد، خروجی شوند. اگر - حالت خط همچنین
در حال استفاده، سپس به جای بایت یا درصد، تعداد خطوط تا کنون است
خروجی و در نهایت اگر --تایمر همچنین در حال استفاده است، سپس هر خط خروجی پیشوند است
با زمان سپری شده تا کنون، به عنوان یک عدد اعشاری از ثانیه.
-q، --ساکت
بدون خروجی مفید است اگر -L گزینه به تنهایی برای محدود کردن آن استفاده می شود
سرعت انتقال یک لوله
OUTPUT اصلاح كننده ها
-W، --صبر کن
صبر کنید تا اولین بایت منتقل شود قبل از اینکه پیشرفتی را نشان دهید
اطلاعات یا محاسبه هر گونه ETA. مفید است اگر برنامه ای که به آن لوله می کنید یا
از قبل از شروع به اطلاعات اضافی نیاز دارد، به عنوان مثال لوله گذاری داده ها به داخل gpg(1) یا
mcrypt(1) که قبل از پردازش داده ها به یک عبارت عبور نیاز دارند.
-دی، --شروع با تاخیر SEC
صبر کنید تا زمانی که SEC چند ثانیه قبل از نمایش هرگونه اطلاعات پیشرفت، برای
به عنوان مثال در یک اسکریپت که در آن شما فقط می خواهید یک نوار پیشرفت را در صورت شروع به گرفتن نشان دهید
زمان طولانی. توجه داشته باشید که این می تواند اعشاری مانند 0.5 باشد.
-s اندازه، --اندازه اندازه
فرض کنید مقدار کل داده ای که باید منتقل شود اندازه بایت در هنگام محاسبه
درصد و ETA همان پسوندهای "k"، "m" و غیره را می توان مانند با استفاده کرد -L.
اگر با آن استفاده شود تاثیری ندارد -d PID برای تماشای تمام توصیفگرهای فایل یک فرآیند، اما
با کار خواهد کرد -d PID:FD.
-ل، - حالت خط
به جای شمارش بایت ها، خطوط را بشمارید (کاراکترهای خط جدید). نوار پیشرفت خواهد بود
تنها زمانی حرکت می کند که یک خط جدید پیدا شود، و مقدار به آن ارسال شود -s گزینه خواهد بود
به عنوان تعداد خطوط تفسیر می شود. توجه داشته باشید که اندازه فایل به طور خودکار محاسبه نمی شود
هنگامی که از این گزینه استفاده می شود، برای جلوگیری از دوبار خواندن همه فایل ها.
-0، --خالی
شمارش خطوط به عنوان تهی پایان یافته است. این گزینه به معنای --line-mode است.
-i SEC، --فاصله SEC
صبر کنيد SEC ثانیه بین به روز رسانی. پیش فرض این است که هر ثانیه به روز شود. توجه داشته باشید
که این می تواند اعشاری مانند 0.1 باشد.
-w عرض، --عرض WIDTH
فرض کنید ترمینال است WIDTH کاراکترهای گسترده، به جای تلاش برای حل آن (یا
با فرض 80 اگر نمی توان حدس زد).
-H ارتفاع ، -- ارتفاع HEIGHT
فرض کنید ترمینال است HEIGHT به جای اینکه سعی کنید آن را حل کنید، ردیف های بالایی دارد (یا
با فرض 25 اگر نمی توان حدس زد).
-N نام، --نام نام
پیشوند اطلاعات خروجی با نام. مفید در ارتباط با -c اگر شما
یک خط لوله پیچیده و شما می خواهید بتوانید قسمت های مختلف آن را از هم جدا کنید.
-f، --زور
خروجی نیرو به طور معمول، pv در صورت وجود خطای استاندارد، هیچ صفحه نمایش بصری را تولید نمی کند
ترمینال نیست این گزینه آن را مجبور به انجام این کار می کند.
-c، -- مکان نما
به جای استفاده از برگرداندن کالسکه، از توالی های فرار موقعیت یابی مکان نما استفاده کنید.
این در ارتباط با -N (نام) اگر از چندگانه استفاده می کنید pv
فراخوان ها در یک خط لوله منفرد، طولانی.
داده ها انتقال اصلاح كننده ها
-L نرخ، --حد نرخ نرخ
انتقال را به حداکثر محدود کنید نرخ بایت در ثانیه پسوند "k"، "m"،
"g" یا "t" را می توان برای نشان دادن کیلوبایت (*1024)، مگابایت و غیره اضافه کرد.
-B بایت، - اندازه بافر BYTES
از اندازه بافر انتقال استفاده کنید BYTES بایت ها پسوند «k»، «m»، «g» یا «t» می تواند
برای نشان دادن کیلوبایت (*1024)، مگابایت و غیره اضافه شود. بافر پیش فرض
اندازه اندازه بلوک فایل سیستم فایل ورودی ضرب در 32 (حداکثر 512 کیلوبایت) است.
یا 400 کیلوبایت اگر اندازه بلوک قابل تعیین نباشد.
-C ، -- بدون اتصال
هرگز استفاده نکنید جفت کردن(2)، حتی اگر به طور معمول امکان پذیر باشد. در جفت کردن(2) سیستم
تماس روشی کارآمدتر از معمولی برای انتقال داده از یا به یک لوله است
خواندن(2) و نوشتن(2)، اما به این معنی است که بافر انتقال ممکن است استفاده نشود. این
جلوگیری از -A و -T از کار کردن، بنابراین اگر می خواهید استفاده کنید -A or -T سپس شما نیاز خواهید داشت
به استفاده از -C، به قیمت از دست دادن کوچک در بهره وری انتقال. (این گزینه ندارد
اثر بر روی سیستم های که در آن جفت کردن(2) در دسترس نیست).
-E، - خطاهای پرش
با تلاش برای رد شدن از بخش های توهین آمیز، خطاهای خواندن را نادیده بگیرید. در
قسمت های مربوط به خروجی بایت تهی خواهد بود. در ابتدا فقط چند بایت
نادیده گرفته می شود، اما اگر خطاهای زیادی پشت سر هم وجود داشته باشد، پرش ها به سمت بالا حرکت می کنند
به تکه های 512. در نظر گرفته شده است که مشابه باشد dd conv= sync، بدون خطا اما دارد
به طور کامل آزمایش نشده است
مشخص کردن -E دو بار به جای گزارش، فقط یک بار در هر فایل یک خطای خواندن را گزارش کنید
هر محدوده بایت نادیده گرفته شد.
-S، --توقف در اندازه
اگر اندازه ای با -s، یک بار که تعداد زیادی بایت دارند، انتقال داده را متوقف کنید
نوشته شده است، به جای ادامه دادن به انتهای ورودی.
-d PID[:FD]، --watchfd PID[:FD]
به جای انتقال داده، توصیفگر فایل را تماشا کنید FD فرآیند PID، و آن را نشان دهید
پیش رفتن. در pv فرآیند زمانی خارج می شود FD یا به فایل دیگری تغییر می کند،
حالت خواندن/نوشتن را تغییر می دهد یا بسته می شود. سایر اصلاح کننده های انتقال داده - و از راه دور
کنترل - ممکن است با این گزینه استفاده نشود.
اگر فقط یک PID مشخص شده است، سپس آن فرآیند مشاهده خواهد شد، و همه به طور منظم
فایلها و مسدود کردن دستگاههایی که باز میشود با نوار پیشرفت نشان داده میشوند. در pv روند
هنگام پردازش خارج می شود PID خارج می شود.
-R PID، --از راه دور PID
If PID نمونه ای از pv که در حال اجرا است، -R PID باعث آن خواهد شد
به عنوان مثال به گونه ای عمل کند که گویی به جای آن خط فرمان این نمونه به آن داده شده است.
برای مثال، اگر pv -L 123k در حال اجرا با شناسه فرآیند 9876، سپس در حال اجرا است pv -R 9876
-L 321k باعث می شود که شروع به استفاده از محدودیت نرخ 321k به جای 123k کند. توجه داشته باشید
که برخی از گزینه ها را نمی توان در حین اجرا تغییر داد، مانند -c, -l, -f, -D, -Eو
-S.
عمومی OPTIONS
-P فایل، --pidfile فایل
شناسه فرآیند را ذخیره کنید pv in فایل. اگر فایل قبلاً باشد کوتاه می شود
وجود دارد و زمانی حذف خواهد شد pv خارج می شود. در حالی که pv در حال اجرا است، حاوی الف خواهد بود
شماره واحد - شناسه فرآیند pv - به دنبال آن یک خط جدید.
-h، --کمک
یک پیام استفاده را در خروجی استاندارد چاپ کنید و با موفقیت از آن خارج شوید.
-V، - نسخه
اطلاعات نسخه را در خروجی استاندارد چاپ کنید و با موفقیت از آن خارج شوید.
قالب بندی
اگر -F گزینه داده می شود، سپس فرمت خروجی با فرمت داده شده تعیین می شود
رشته در داخل آن رشته می توان از دنباله های زیر استفاده کرد:
%p نوار پیشرفت. بزرگ می شود تا فضای باقی مانده را پر کند. فقط یک بار باید مشخص شود.
معادل با -p.
%t زمان سپری شده معادل با -t.
%e ETA به عنوان زمان باقی مانده. معادل با -e.
%I ETA به عنوان زمان محلی تکمیل. معادل با -I.
%r سرعت انتقال داده فعلی معادل با -r.
%a میانگین سرعت انتقال داده معادل با -a.
%b بایت هایی که تاکنون منتقل شده اند (یا خطوط اگر -l مشخص شد). معادل با -b.
%T درصد بافر انتقال در حال استفاده. معادل با -T. اگر "{----}" را نشان می دهد
انتقال با انجام می شود جفت کردن(2)، از آنجایی که اتصال به یا از لوله ها استفاده نمی شود
بافر
%nA آخرین را نشان دهید n بایت های نوشته شده (مثلا % 16A برای 16 بایت آخر). فقط نقطه ها را نشان می دهد
اگر انتقال با انجام می شود جفت کردن(2)، از آنجایی که اتصال به یا از لوله ها انجام می شود
از بافر استفاده نکنید
%N پیشوند نام داده شده توسط -N. به 9 کاراکتر با فاصله اضافه شده و با پسوند :.
%% یک درصد واحد
رشته فرمت معادل روشن کردن تمام کلیدهای نمایشگر است `%N %b %T %t %r %a %p
%e.
خروج وضعیت
وضعیت خروج 1 نشان دهنده مشکلی است -R or -P گزینه.
هر وضعیت خروج دیگری یک بیت ماسک از موارد زیر است:
2 یک یا چند فایل قابل دسترسی نبود، آمار(2) ed، یا باز شد.
4 یک فایل ورودی همان فایل خروجی بود.
8 خطای داخلی با بستن یک فایل یا انتقال به فایل بعدی.
16 هنگام انتقال داده از یک یا چند فایل ورودی خطایی روی داد.
32 سیگنالی گرفته شد که باعث خروج زودهنگام شد.
64 تخصیص حافظه انجام نشد.
وضعیت خروج صفر نشان دهنده عدم وجود مشکل است.
با استفاده از خدمات onworks.net از pv آنلاین استفاده کنید