.\" -*- coding: us-ascii -*- .if \n(.g .ds T< \\FC .if \n(.g .ds T> \\F[\n[.fam]] .de URL \\$2 \(la\\$1\(ra\\$3 .. .if \n(.g .mso www.tmac .TH lckdo 1 2007-08-15 moreutils moreutils .SH "نام (NAME)" lckdo \- اجرای یک برنامه با نگه‌داشتن قفل .SH "خلاصه دستور (SYNOPSIS)" 'nh .fi .ad l \fBlckdo\fR \kx .if (\nx>(\n(.l/2)) .nr x (\n(.l/5) 'in \n(.iu+\nxu [options] {lockfile} {program} [arguments] 'in \n(.iu-\nxu .ad b 'hy .SH "توضیحات (DESCRIPTION)" دستور \fBlckdo\fR یک برنامه را با نگه‌داشتن قفل اجرا می‌کند تا از اجرای هم‌زمان چندین فرآیند جلوگیری نماید. استفاده از آن دقیقاً مانند \fBnice\fR یا \fBnohup\fR است. .PP با توجه به این‌که util-linux حاوی دستوری مشابه به نام \fBflock\fR است، دستور lckdo منسوخ شده است و در نگارش‌های آینده moreutils حذف خواهد شد. .SH "گزینه‌ها (OPTIONS)" .TP \*(T<\fB\-w\fR\*(T> اگر قفل پیش‌تر توسط فرآیند دیگری در اختیار گرفته شده باشد، به جای خروج فوری با خطا، تا اتمام آن منتظر می‌ماند. .TP \*(T<\fB\-W {sec}\fR\*(T> مشابه \fB\-w\fR، اما بیش از sec ثانیه منتظر نمی‌ماند. .TP \*(T<\fB\-e\fR\*(T> برنامه را مستقیماً و بدون انشعاب (forking) و انتظار اجرا می‌کند (یک توصیف‌گر فایل اضافی را باز نگه می‌دارد). .TP \*(T<\fB\-E {nnn}\fR\*(T> شماره توصیف‌گر فایلی که هنگام فراخوانی exec() باید باز بماند را تعیین می‌کند (به طور ضمنی شامل \fB\-e\fR است). .TP \*(T<\fB\-n\fR\*(T> اگر فایل قفل وجود نداشته باشد، آن را ایجاد نمی‌کند. .TP \*(T<\fB\-q\fR\*(T> اگر قفل از قبل در اختیار باشد، هیچ خروجی‌ای تولید نمی‌کند. .TP \*(T<\fB\-s\fR\*(T> قفل‌گذاری در حالت اشتراکی (خواندنی). .TP \*(T<\fB\-x\fR\*(T> قفل‌گذاری در حالت انحصاری (نوشتنی) (پیش‌فرض). .TP \*(T<\fB\-t\fR\*(T> بررسی وجود داشتن قفل. .SH "وضعیت خروج (EXIT STATUS)" در صورت دریافت موفقیت‌آمیز قفل، مقدار بازگشتی همان مقدار بازگشتی برنامه فراخوانی‌شده توسط \fBlckdo\fR است. اگر دریافت قفل ممکن نباشد، مقدار EX_TEMPFAIL بازگردانده می‌شود. در صورت بروز مشکل در باز کردن/ایجاد یا قفل کردن فایل قفل، مقدار EX_CANTCREAT یا EX_OSERR بازگردانده خواهد شد. .SH "نویسنده (AUTHOR)" Michael Tokarev