این دستور vramsteg است که می تواند در ارائه دهنده میزبانی رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
vramsteg - نوار پیشرفت CLI
خلاصه
برای نمایش/بهروزرسانی نوار پیشرفت:
vramsteg -- دقیقه -- حداکثر --جاری [گزینه ها]
برای حذف نوار پیشرفت:
vramsteg --برداشتن
برای ثبت زمان شروع:
START=$(vramsteg --اکنون)
برای درج زمان سپری شده (که به زمان شروع نیاز دارد):
vramsteg --start=$START --سپری شده ...
برای گنجاندن زمان تخمینی باقی مانده (که به زمان شروع نیاز دارد):
vramsteg --start=$START --تخمین زدن ...
برای استفاده از یک عرض نوار خاص:
vramsteg --عرض 100 ...
برای نمایش درصد تکمیل شده:
vramsteg -- درصد ...
برای نشان دادن یک برچسب در ابتدای نوار:
vramsteg --برچسب این is a برچسب ...
برای استفاده از یک سبک رندر جایگزین:
vramsteg --سبک ...
شرح
("پیشرفت" در سوئدی، تقریبا) یک ابزار منبع باز و خط فرمان است که فراهم می کند
اسکریپت های پوسته با نشانگر پیشرفت کامل. نوار پیشرفت می تواند نمایش داده شود
زمان سپری شده، تخمین زمان باقیمانده، درصد تکمیل، و برچسب ها. نوار پیشرفت
می تواند رنگ های مشخص شده توسط کاربر داشته باشد و در چندین سبک ارائه شود.
اگر یک اسکریپت پوسته یا در واقع هر برنامه خط فرمانی دارید که به نوار پیشرفت نیاز دارد،
vramsteg ممکن است راه حل مناسبی باشد. فرض کنید برنامه ای دارید که a را اجرا می کند
عملیات طولانی، به شرطی که فرصتی برای اجرای مکرر vramsteg داشته باشد،
سپس ادغام نوار پیشرفت ساده است.
ممکن است در میان دستورات rsync یا scp نوارهای پیشرفت را دیده باشید
دیگران.
مثال ها
در اینجا یک اسکریپت کامل پوسته bash آمده است که نحوه عملکرد vramsteg را به ساده ترین شکل نشان می دهد
مورد:
#! / bin / bash
vramsteg --min 0 --max 4 --current 0
خواب 1
vramsteg --min 0 --max 4 --current 1
خواب 1
vramsteg --min 0 --max 4 --current 2
خواب 1
vramsteg --min 0 --max 4 --current 3
خواب 1
vramsteg --min 0 --max 4 --current 4
از دست
بدیهی است که این یک مثال ساختگی است، اما نشان می دهد که چگونه vramsteg برای نشان دادن 4 استفاده می شود.
مراحل مرحله آرگومان های --min و --max مشخص می کنند که چه چیزی 0% و 100% از آن را تشکیل می دهد
کار، و مقادیر صحیح هستند. آرگومان --current نشان می دهد که نوار پیشرفت کجاست
در هر لحظه تکمیل مثال 4 ثانیه طول می کشد، اما این دستورات خواب هستند
پروکسی برای هر کاری که برنامه شما انجام می دهد.
مثال واقع بینانه تر شامل حلقه زدن است. در اینجا یک حلقه اسکریپت پوسته ساده وجود دارد که انجام خواهد شد
برای مثال کامل تر استفاده شود:
#! / bin / bash
برای من در {0..10}
do
vramsteg --min 0 --max 10 --current $i
خواب 1
انجام شده
از دست
باز هم، دستور خواب نشان دهنده کار واقعی است که در حال انجام است. توجه داشته باشید که
دستور 'echo' در انتها یک کاراکتر خط جدید را برای جلوگیری از هرگونه متن ارائه می دهد
رونویسی نوار برای حذف نوار پس از اتمام، اسکریپت به صورت زیر در می آید:
#! / bin / bash
برای من در {0..10}
do
vramsteg --min 0 --max 10 --current $i
خواب 1
انجام شده
vramsteg -- حذف
اکنون آخرین لیست جایگزین نیاز به دستور 'echo' است.
دو ویژگی وجود دارد که نیاز به کد اضافی دارد. به منظور نمایش سپری شده
زمان، vramsteg باید زمان شروع فرآیند را بداند. چون vramsteg هست
بدون حالت، زمان شروع باید در هر تماس مشخص شود، اما ابتدا زمان شروع
باید اسیر شود یک گزینه --now وجود دارد که باعث می شود زمان فعلی (به صورت دوره ای) به حالت قبل برسد
نمایش داده شود:
vramsteg --اکنون
1276361315
این مقدار باید توسط اسکریپت پوسته گرفته شود، مانند زیر:
START=$(vramsteg --now)
or
START=`vramsteg --now`
سپس همراه با گزینه --elapsed، زمان شروع به هر فراخوان vramsteg ارائه می شود
مثل این:
#! / bin / bash
START=$(../vramsteg --now)
برای من در {0..10}
do
vramsteg --min 0 --max 10 --$i فعلی --شروع $START --سپری شده
خواب 1
انجام شده
vramsteg -- حذف
از آنجا که vramsteg بدون حالت است، به این معنی که هیچ اطلاعاتی را روی دیسک ضبط نمی کند
زمان شروع باید برای هر تماس vramsteg که از آن استفاده می کند مشخص شود.
ویژگی دیگر تخمین زمان باقی مانده است که در موارد مشابه استفاده می شود
روش:
#! / bin / bash
START=$(../vramsteg --now)
برای من در {0..10}
do
vramsteg --min 0 --max 10 --$i فعلی --شروع $START -- تخمین
خواب 1
انجام شده
vramsteg -- حذف
زمان تخمینی فقط اعداد کامل ثانیه را نشان می دهد و به دلیل گزینه --now
همچنین فقط ثانیه های کامل را برمی گرداند، ممکن است اشتباهاتی در سپری شده و تخمین زده شده وجود داشته باشد
زمان اگر فرآیند سریع باشد.
به طور پیش فرض vramsteg از 80 ستون برای نمایش نوار پیشرفت استفاده می کند. شما ممکن است این را نادیده بگیرید
با تعیین عرض متفاوت، اما اگر انجام دادید، باید آن عرض را نیز برای
همه تماس های vramsteg، مانند:
vramsteg --remove --width 100
اگر عرضی را مشخص کنید که برای گنجاندن ویژگی هایی مانند برچسب، درصد، بسیار کوچک است،
سپری شده و زمان تخمین زده شده، یک خطا گزارش شده است.
اگر دستور را وارد کنید:
vramsteg
بدون آرگومان، استفاده از دستور، از جمله نمونه هایی از نوارهای پیشرفت در نمایش داده می شود
سبک های پشتیبانی شده
با استفاده از خدمات onworks.net از vramsteg آنلاین استفاده کنید