.\" $NetBSD: ftp.1,v 1.20 2026/02/08 07:11:12 lukem Exp $ .\" from NetBSD: ftp.1,v 1.163 2026/02/07 03:11:20 lukem Exp .\" .\" Copyright (c) 1996-2026 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This code is derived from software contributed to The NetBSD Foundation .\" by Luke Mewburn. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" .\" .\" Copyright (c) 1985, 1989, 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)ftp.1 8.3 (Berkeley) 10/9/94 .\" .Dd February 7, 2026 .Dt TNFTP 1 .Os .Sh "نام (NAME)" .Nm tnftp .Nd برنامه انتقال فایل اینترنتی .Sh "خلاصه دستور (SYNOPSIS)" .Nm .Op Fl 46AadefginpRtVv .Op Fl b Ar bufsize .Op Fl H Ar header .Op Fl N Ar netrc .Op Fl o Ar output .Op Fl P Ar port .Op Fl q Ar quittime .Op Fl r Ar retry .Op Fl s Ar srcaddr .Bk -words .\" [-T dir,max[,inc]] .Oo .Fl T Xo .Sm off .Ar dir Cm \&, .Ar max .Op Cm \&, Ar inc .Sm on .Xc .Oc .Ek .Op Fl x Ar xfersize .Bk -words .\" [[user@]host [port]] .Oo .Oo Ar user Ns Li \&@ Oc Ns Ar host Oo Ar port Oc .Oc .Ek .Bk -words .\" [[user@]host:[path][/]] .Sm off .Oo .Op Ar user Li \&@ .Ar host Li \&: .Op Ar path .Op Li / .Oc .Sm on .Ek .Bk -words .\" [file:///path] .Sm off .Oo .Li file:/// Ar path .Oc .Sm on .Ek .Bk -words .\" [ftp://[user[:password]@]host[:port]/path[/]] .Sm off .Oo .Li ftp:// .Oo Ar user .Op Li \&: Ar password .Li \&@ Oc .Ar host Oo Li \&: Ar port Oc .Li / Ar path .Op Li / .Op Li ;type= Ar type .Oc .Sm on .Ek .Bk -words .\" [http://[user[:password]@]host[:port]/path] .Sm off .Oo .Li http:// .Oo Ar user .Op Li \&: Ar password .Li \&@ Oc .Ar host Oo Li \&: Ar port Oc .Li / Ar path .Oc .Sm on .Ek .Bk -words .\" [https://[user[:password]@]host[:port]/path] .Sm off .Oo .Li https:// .Oo Ar user .Op Li \&: Ar password .Li \&@ Oc .Ar host Oo Li \&: Ar port Oc .Li / Ar path .Oc .Sm on .Ek .Ar \&... .Nm .Bk -words .Fl u Ar url Ar .Ek .Nm .Fl \&?.Sh "توضیحات (DESCRIPTION)" .Nm رابط کاربری برای پروتکل استاندارد اینترنتی انتقال فایل (File Transfer Protocol) است. این برنامه به کاربر امکان می‌دهد فایل‌ها را به یا از یک میزبان شبکه‌ای دوردست انتقال دهد. .Pp پنج آرگومان پایانی یک فایل را با استفاده از پروتکل‌های .Tn FTP یا .Tn HTTP یا از طریق رونویسی مستقیم، به دایرکتوری جاری دریافت می‌کنند. این قابلیت برای اسکریپت‌ها ایده‌آل است. برای اطلاعات بیشتر به .Sx AUTO-FETCHING FILES در ادامه مراجعه کنید. .Pp گزینه‌ها را می‌توان در خط فرمان یا به مفسر دستور مشخص کرد. .Bl -tag -width Fl .It Fl 4 .Nm را وادار می‌کند تنها از نشانی‌های IPv4 استفاده کند. .It Fl 6 .Nm را وادار می‌کند تنها از نشانی‌های IPv6 استفاده کند. .It Fl A حالت فعال (active mode) در .Tn FTP را اجبار می‌کند. به‌طور پیش‌فرض، .Nm تلاش می‌کند از حالت غیرفعال (passive mode) در .Tn FTP استفاده کند و در صورتی که سرور از حالت غیرفعال پشتیبانی نکند، به حالت فعال بازگردد. این گزینه باعث می‌شود .Nm همیشه از یک اتصال فعال استفاده کند. این گزینه تنها برای اتصال به سرورهای بسیار قدیمی که حالت غیرفعال را به‌درستی پیاده‌سازی نکرده‌اند کاربرد دارد. .It Fl a باعث می‌شود .Nm روال عادی ورود را نادیده گرفته و در عوض از ورود ناشناس (anonymous) استفاده کند. .It Fl b Ar bufsize اندازه بافر استفاده‌شده برای تجزیه خطوط پاسخ HTTP را به .Ar bufsize بایت تغییر می‌دهد. مقدار پیش‌فرض .Ar bufsize برابر با .Dv 16384 (16 KiB) است. .It Fl d اشکال‌زدایی را فعال می‌کند. .It Fl e ویرایش خط فرمان را غیرفعال می‌کند. این گزینه برای حالت ange-ftp در Emacs مفید است. .It Fl f بارگذاری مجدد حافظه موقت (cache) را برای انتقال‌هایی که از پروکسی‌های .Tn FTP یا .Tn HTTP عبور می‌کنند اجبار می‌کند. .It Fl g تطبیق الگوهای نام فایل (globbing) را غیرفعال می‌کند. .It Fl H Ar header رشته .Ar header ارائه‌شده را به عنوان یک سرایند سفارشی .Tn HTTP برای یک درخواست .Tn HTTP لحاظ می‌کند. گزینه .Fl H می‌تواند برای افزودن سرایندهای بیشتر تکرار شود. .It Fl i درخواست‌های تأیید تعاملی را در حین انتقال چندگانه فایل‌ها غیرفعال می‌کند. .It Fl N Ar netrc به جای .Pa ~/.netrc از .Ar netrc استفاده می‌کند. برای اطلاعات بیشتر به .Sx THE .netrc FILE مراجعه کنید. .It Fl n .Nm را از تلاش برای .Dq auto-login هنگام اتصال اولیه در انتقال‌های غیر خودکار بازمی‌دارد. اگر ورود خودکار فعال باشد، .Nm فایل .Pa .netrc (در ادامه توضیح داده شده) در دایرکتوری خانگی کاربر را برای یافتن مدخلی مربوط به یک حساب در رایانه دوردست بررسی می‌کند. اگر مدخلی وجود نداشته باشد، .Nm نام کاربری برای ورود به رایانه دوردست را درخواست می‌کند .Pq پیش‌فرض، شناسه کاربر در رایانه محلی است , و در صورت لزوم، گذرواژه و حسابی را که باید با آن وارد شود جویا می‌شود. برای لغو ورود خودکار در انتقال‌های دریافت خودکار، نام کاربری .Pq و در صورت تمایل، گذرواژه را برحسب نیاز مشخص کنید. .It Fl o Ar output هنگام دریافت خودکار فایل‌ها، محتویات را در .Ar output ذخیره می‌کند. .Ar output بر اساس .Sx FILE NAMING CONVENTIONS در ادامه تجزیه می‌شود. اگر .Ar output برابر با .Sq Fl نبوده یا با .Sq Cm \&| آغاز نشود، آنگاه تنها اولین فایل مشخص‌شده در .Ar output دریافت خواهد شد؛ تمام فایل‌های دیگر با نام پایه (basename) نام دوردست خود دریافت خواهند شد. .It Fl P Ar port شماره پورت را به .Ar port تنظیم می‌کند. .It Fl p عملیات در حالت غیرفعال را برای استفاده در پشت فایروال‌های فیلترکننده اتصالات فعال می‌کند. این گزینه منسوخ شده است، زیرا .Nm اکنون به‌طور پیش‌فرض تلاش می‌کند از حالت غیرفعال استفاده کند و در صورتی که سرور از اتصالات غیرفعال پشتیبانی نکند به حالت فعال بازمی‌گردد. .It Fl q Ar quittime اگر اتصال به مدت .Ar quittime ثانیه متوقف بماند، برنامه را می‌بندد. .It Fl R تمام دریافت‌های خودکار غیرپروکسی‌شده را از سر می‌گیرد. .It Fl r Ar retry در صورت ناموفق بودن تلاش برای اتصال، با مکث به مدت .Ar retry ثانیه، مجدداً تلاش می‌کند. .It Fl s Ar srcaddr از .Ar srcaddr به عنوان نشانی IP محلی برای تمام اتصالات استفاده می‌کند. .It Fl t ردیابی بسته‌ها (packet tracing) را فعال می‌کند. .It Fl T Ar direction Ns Cm \&, Ns Ar maximum Ns Oo Cm \&, Ns Ar increment Oc حداکثر نرخ انتقال برای .Ar direction را به .Ar maximum بایت بر ثانیه، و در صورت تعیین، گام افزایش را به .Ar increment بایت بر ثانیه تنظیم می‌کند. برای اطلاعات بیشتر به .Ic rate مراجعه کنید. .It Fl u Ar url Ar فایل‌های مشخص‌شده در خط فرمان را به .Ar url بارگذاری می‌کند، که در آن .Ar url یکی از انواع نشانی‌های .Ql ftp:// پشتیبانی‌شده توسط دریافت خودکار (auto-fetch) است .Pq همراه با یک نام فایل مقصد اختیاری برای بارگذاری تک‌فایل , و .Ar file یک یا چند فایل محلی است که باید بارگذاری شوند. .It Fl V .Ic verbose و .Ic progress را غیرفعال می‌کند، و حالت پیش‌فرض فعال بودن هنگام ارسال خروجی به ترمینال را لغو می‌کند. .It Fl v .Ic verbose و .Ic progress را فعال می‌کند. این حالت در صورتی که خروجی به یک ترمینال ارسال شود، پیش‌فرض است.Po و در مورد .Ic progress , .Nm فرایند پیش‌زمینه باشد .Pc . .Nm را وادار می‌کند تا تمام پاسخ‌های کارساز دوردست و همچنین گزارش آمارهای انتقال داده را نمایش دهد. .It Fl x Ar xfersize اندازه بافرهای ارسال و دریافت سوکت را روی .Ar xfersize بایت تنظیم می‌کند. برای اطلاعات بیشتر به .Ic xferbuf مراجعه کنید. .It Fl \&? راهنما را در خروجی استاندارد نمایش داده و خارج می‌شود. .El .Pp میزبانی که .Nm باید با آن ارتباط برقرار کند، می‌تواند در خط فرمان مشخص شود. اگر چنین شود، .Nm بلافاصله برای برقراری اتصال به یک کارساز .Tn FTP روی آن میزبان تلاش خواهد کرد؛ در غیر این صورت، .Nm وارد مفسر دستورهای خود شده و منتظر دستورهای کاربر می‌ماند. هنگامی که .Nm منتظر دستورهای کاربر است، اعلان .Ql ftp> به کاربر نمایش داده می‌شود. دستورهای زیر توسط .Nm شناخته می‌شوند: .Bl -tag -width Ic .It Ic \&! Op Ar command Op Ar args یک شل تعاملی را روی ماشین محلی فراخوانی می‌کند. اگر آرگومان‌هایی وجود داشته باشد، اولین آرگومان به عنوان دستوری برای اجرای مستقیم در نظر گرفته می‌شود و بقیه آرگومان‌ها به عنوان آرگومان‌های آن عمل می‌کنند. .It Ic \&$ Ar macro-name Op Ar args ماکروی .Ar macro-name را که با دستور .Ic macdef تعریف شده است اجرا می‌کند. آرگومان‌ها بدون بسط الگو (unglobbed) به ماکرو ارسال می‌شوند. .It Ic account Op Ar passwd گذرواژه تکمیلی مورد نیاز یک سیستم دوردست را برای دسترسی به منابع، پس از انجام موفقیت‌آمیز ورود به سیستم، ارائه می‌دهد. اگر هیچ آرگومانی ارائه نشود، در حالت ورودی بدون بازتاب از کاربر خواسته می‌شود تا گذرواژه حساب را وارد کند. .It Ic append Ar local-file Op Ar remote-file یک فایل محلی را به انتهای یک فایل در ماشین دوردست الحاق می‌کند. اگر .Ar remote-file مشخص نشود، نام فایل محلی پس از اعمال هرگونه تغییر توسط تنظیمات .Ic ntrans یا .Ic nmap برای نام‌گذاری فایل دوردست استفاده می‌شود. انتقال فایل از تنظیمات جاری برای .Ic type ، .Ic form ، .Ic mode و .Ic struct استفاده می‌کند. .It Ic ascii مترادفی برای .Ic type Cm ascii . .It Ic bell تنظیم می‌کند که پس از تکمیل هر دستور انتقال فایل، صدایی شبیه زنگ نواخته شود. .It Ic binary مترادفی برای .Ic type Cm binary . .It Ic bye نشست .Tn FTP با کارساز دوردست را خاتمه داده و از .Nm tnftp خارج می‌شود. رسیدن به انتهای فایل (EOF) نیز نشست را خاتمه داده و خارج می‌شود. .It Ic case تطبیق بزرگی و کوچکی حروف نام فایل در رایانه دوردست را هنگام اجرای دستورهای .Ic get ، .Ic mget و .Ic mput تغییر وضعیت می‌دهد. هنگامی که .Ic case روشن است (پیش‌فرض خاموش است)، نام فایل‌های رایانه دوردست که تمام حروف آن‌ها بزرگ است، با تبدیل به حروف کوچک در دایرکتوری محلی نوشته می‌شوند. .It Ic \&cd Ar remote-directory دایرکتوری کاری در ماشین دوردست را به .Ar remote-directory تغییر می‌دهد. .It Ic cdup دایرکتوری کاری ماشین دوردست را به والد دایرکتوری کاری جاری ماشین دوردست تغییر می‌دهد. .It Ic chmod Ar mode remote-file حالت‌های مجوز دسترسی فایل .Ar remote-file روی سیستم دوردست را به .Ar mode تغییر می‌دهد. .It Ic close نشست .Tn FTP با کارساز دوردست را خاتمه داده و به مفسر دستور بازمی‌گردد. تمام ماکروهای تعریف‌شده پاک می‌شوند. .It Ic connect Ar host Op Ar port مترادفی برای .Ic open . .It Ic \&cr حذف نویسه بازگشت به سر سطر (carriage return) را هنگام دریافت فایل در حالت .Ic type Cm ascii تغییر وضعیت می‌دهد. در طول انتقال فایل در حالت .Ic type Cm ascii ، رکوردها با دنباله carriage return/linefeed مشخص می‌شوند. هنگامی که .Ic \&cr روشن باشد (حالت پیش‌فرض)، نویسه‌های بازگشت به سر سطر از این دنباله حذف می‌شوند تا با جداکننده رکورد تک‌linefeed در .Ux مطابقت داشته باشند. رکوردها در سیستم‌های دوردستِ .Pf non\- Ux ممکن است حاوی تک‌linefeed باشند؛ هنگامی که یک انتقال .Ic type Cm ascii انجام می‌شود، این linefeedها تنها زمانی از جداکننده رکورد قابل تفکیک هستند که .Ic \&cr خاموش باشد. .It Ic debug Op Ar debug-value حالت اشکال‌زدایی را تغییر وضعیت می‌دهد. اگر مقدار اختیاری .Ar debug-value مشخص شود، برای تنظیم سطح اشکال‌زدایی استفاده می‌شود. هنگامی که اشکال‌زدایی فعال باشد، .Nm هر دستور ارسالی به ماشین دوردست را با پیشوند رشته .Ql \-\-> چاپ می‌کند. .It Ic delete Ar remote-file فایل .Ar remote-file را روی ماشین دوردست حذف می‌کند. .It Ic dir Op Ar remote-path Op Ar local-file فهرستی از محتویات یک دایرکتوری در ماشین دوردست را چاپ می‌کند. این فهرست شامل هرگونه اطلاعات وابسته به سیستم است که کارساز برای گنجاندن انتخاب می‌کند؛ برای نمونه، بیشتر سیستم‌های .Ux خروجی دستور .Ql ls \-l را تولید خواهند کرد. اگر .Ar remote-path مشخص نشود، از دایرکتوری کاری جاری استفاده می‌شود. اگر اعلان تعاملی فعال باشد، .Nm از کاربر می‌خواهد تا تأیید کند که آخرین آرگومان واقعاً فایل محلی مقصد برای دریافت خروجی .Ic dir است. اگر هیچ فایل محلی مشخص نشود، یا اگر .Ar local-file برابر با .Sq Fl باشد، خروجی به پایانه ارسال می‌شود. .It Ic disconnect مترادفی برای .Ic close . .It Ic edit ویرایش خط فرمان و تکمیل خودکار حساس به متن دستورها و فایل‌ها را تغییر وضعیت می‌دهد. اگر ورودی از یک پایانه باشد، این ویژگی به طور خودکار فعال و در غیر این صورت غیرفعال می‌شود. .It Ic epsv , epsv4 , epsv6 استفاده از دستورهای گسترش‌یافته .Dv EPSV و .Dv EPRT را به ترتیب در تمام اتصالات IP، IPv4 و IPv6 تغییر وضعیت می‌دهد. ابتدا .Dv EPSV Ns \^/\^ Ns Dv EPRT و سپس .Dv PASV Ns \^/\^ Ns Dv PORT را امتحان می‌کند. این گزینه به صورت پیش‌فرض فعال است. اگر یک دستور گسترش‌یافته با شکست مواجه شود، این گزینه به طور موقت در طول مدت اتصال جاری، یا تا زمانی که .Ic epsv ، .Ic epsv4 یا .Ic epsv6 مجدداً اجرا شود، غیرفعال خواهد شد. .It Ic exit مترادفی برای .Ic bye . .It Ic features ویژگی‌هایی را که کارساز دوردست پشتیبانی می‌کند، نمایش می‌دهد.Pq با استفاده از دستور Dv FEAT . .It Ic fget Ar localfile دریافت فایل‌های فهرست‌شده در .Ar localfile که در هر سطر آن یک نام فایل قرار دارد. .It Ic form Ar format تنظیم کنترل قالب انتقال فایل به .Ar format . قالب پیش‌فرض (و تنها قالب پشتیبانی‌شده) .Ar format برابر با .Ql non-print است. .It Ic ftp Ar host Op Ar port مترادفی برای .Ic open . .It Ic gate Op Ar host Op Ar port تغییر وضعیت حالت gate-ftp، که برای اتصال از طریق پیشکارهای .Tn FTP مربوط به TIS FWTK و Gauntlet به کار می‌رفت. اگر کارگزار gate-ftp .Po خواه به‌طور صریح توسط کاربر، خواه از طریق متغیر محیطی .Ev FTPSERVER .Pc تنظیم نشده باشد، این عمل مجاز نخواهد بود. اگر .Ar host مشخص شود، حالت gate-ftp فعال خواهد شد و کارگزار gate-ftp روی .Ar host تنظیم می‌شود. اگر .Ar port نیز مشخص شود، از آن به‌عنوان درگاه اتصال به کارگزار gate-ftp استفاده خواهد شد. .It Ic get Ar remote-file Op Ar local-file دریافت .Ar remote-file و ذخیره آن روی دستگاه محلی. اگر نام فایل محلی مشخص نشود، همان نامی که در دستگاه دوردست دارد به آن اختصاص داده می‌شود، که ممکن است بر اثر تنظیمات فعلی .Ic case , .Ic ntrans و .Ic nmap تغییر یابد. تنظیمات فعلی .Ic type , .Ic form , .Ic mode و .Ic struct در حین انتقال فایل استفاده می‌شوند. .It Ic glob تغییر وضعیت گسترش نام فایل برای .Ic mdelete , .Ic mget , .Ic mput و .Ic mreget . اگر تطبیق الگو (globbing) با .Ic glob غیرفعال شود، آرگومان‌های نام فایل به‌صورت عینی در نظر گرفته شده و گسترش نمی‌یابند. تطبیق الگو برای .Ic mput مانند .Xr csh 1 انجام می‌شود. برای .Ic mdelete , .Ic mget و .Ic mreget , هر نام فایل دوردست به‌طور جداگانه در دستگاه دوردست گسترش می‌یابد و فهرست‌ها با یکدیگر ادغام نمی‌شوند. احتمالاً گسترش نام یک دایرکتوری با گسترش نام یک فایل معمولی متفاوت خواهد بود: نتیجه دقیق به سیستم‌عامل دوردست و کارگزار .Tn FTP بستگی دارد، و می‌توان با اجرای دستور .Sq Li mls remote-files \- پیش‌نمایشی از آن را مشاهده کرد. نکته: دستورهای .Ic mget , .Ic mput و .Ic mreget برای انتقال کل زیردرخت‌های دایرکتوری در نظر گرفته نشده‌اند. این کار را می‌توان با انتقال یک بایگانی .Xr tar 1 از آن زیردرخت، در حالت .Ic type Cm binary انجام داد. .It Ic hash Op Ar size تغییر وضعیت چاپ علامت هش .Pq Ql # به ازای هر بلوک داده منتقل‌شده. اندازه پیش‌فرض هر بلوک داده ۱۰۲۴ بایت است. این مقدار را می‌توان با مشخص کردن .Ar size به بایت تغییر داد. فعال کردن .Ic hash باعث غیرفعال شدن .Ic progress می‌شود. .It Ic help Op Ar command چاپ یک پیام اطلاع‌رسانی درباره معنی .Ar command . اگر آرگومانی داده نشود، .Nm فهرستی از دستورهای شناخته‌شده را چاپ می‌کند. .It Ic idle Op Ar seconds تنظیم زمان‌سنج بی‌کاری در کارگزار دوردست روی .Ar seconds ثانیه. اگر .Ar seconds مشخص نشود، زمان‌سنج بی‌کاری فعلی چاپ می‌شود. .It Ic image مترادفی برای .Ic type Cm binary . .It Ic lcd Op Ar directory تغییر دایرکتوری کاری روی دستگاه محلی. اگر هیچ .Ar directory مشخص نشود، از دایرکتوری خانگی کاربر استفاده می‌شود. .It Ic less Ar file مترادفی برای .Ic page . .It Ic lpage Ar local-file نمایش .Ar local-file با برنامه‌ای که توسط گزینه .Ic "set pager" مشخص شده است. .It Ic lpwd چاپ دایرکتوری کاری روی دستگاه محلی. .It Ic \&ls Op Ar remote-path Op Ar local-file مترادفی برای .Ic dir . .It Ic macdef Ar macro-name تعریف یک ماکرو. سطرهای بعدی به‌عنوان ماکروی .Ar macro-name ذخیره می‌شوند؛ یک سطر خالی .Po نویسه‌های خط جدید متوالی در یک فایل یا بازگشت به ابتدای سطر از ترمینال .Pc به حالت ورودی ماکرو پایان می‌دهد. محدودیت ۱۶ ماکرو و در مجموع ۴۰۹۶ نویسه برای تمامی ماکروهای تعریف‌شده وجود دارد. نام ماکروها حداکثر می‌تواند ۸ نویسه باشد. ماکروها فقط برای همان نشستی که در آن تعریف شده‌اند اعمال می‌شوند .Po یا در صورت تعریف خارج از نشست، برای نشستی که با دستور بعدی .Ic open فراخوانی می‌شود .Pc و تا زمان اجرای دستور .Ic close تعریف‌شده باقی می‌مانند. برای فراخوانی یک ماکرو، از دستور .Ic $ استفاده کنید (به بالا رجوع کنید). .Pp پردازشگر ماکرو .Ql $ و .Ql \e را به‌عنوان نویسه‌های خاص تفسیر می‌کند. یک .Ql $ که پس از آن یک عدد (یا اعدادی) آمده باشد، با آرگومان متناظر در خط فرمان فراخوانی ماکرو جایگزین می‌شود. یک .Ql $ که پس از آن یک .Ql i آمده باشد، به پردازشگر ماکرو اعلام می‌کند که ماکروی در حال اجرا باید تکرار شود (حلقه بزند). در دور نخست، .Ql $i با اولین آرگومان در خط فرمان فراخوانی ماکرو جایگزین می‌شود، در دور دوم با دومین آرگومان جایگزین می‌شود، و به همین ترتیب. یک .Ql \e که پس از آن هر نویسه‌ای بیاید، با همان نویسه جایگزین می‌شود. از .Ql \e برای جلوگیری از رفتار ویژه با .Ql $ استفاده کنید. .It Ic mdelete Op Ar remote-files حذف .Ar remote-files روی دستگاه دوردست. .It Ic mdir Ar remote-files local-file مانند دستور .Ic dir است، با این تفاوت که می‌توان چندین فایل دوردست را مشخص کرد. اگر اعلان تعاملی فعال باشد، .Nm از کاربر می‌خواهد تأیید کند که آخرین آرگومان واقعاً فایل محلی مقصد برای دریافت خروجی .Ic mdir است. .It Ic mget Ar remote-files گسترش .Ar remote-files روی دستگاه دوردست و اجرای دستور .Ic get برای هر نام فایل تولیدشده. برای جزئیات گسترش نام فایل به .Ic glob مراجعه کنید. نام‌های فایل حاصل طبق تنظیمات .Ic case , .Ic ntrans و .Ic nmap پردازش خواهند شد. فایل‌ها به دایرکتوری کاری محلی منتقل می‌شوند، که با .Ic lcd Ar directory قابل تغییر است؛ دایرکتوری‌های محلی جدید را می‌توان با .Ic \&! mkdir Ar directory ایجاد کرد. .It Ic mkdir Ar directory-name ایجاد یک دایرکتوری روی دستگاه دوردست. .It Ic mls Ar remote-files local-file مانند دستور .Ic ls است، با این تفاوت که می‌توان چندین فایل دوردست را مشخص کرد، و .Ar local-file باید مشخص شود. اگر اعلان تعاملی فعال باشد، .Nm از کاربر می‌خواهد تأیید کند که آخرین آرگومان واقعاً فایل محلی مقصد برای دریافت خروجی .Ic mls است..It Ic mlsd Op Ar remote-path نمایش محتویات .Ar remote-path .Pq که در صورت مشخص نشدن، پیش‌فرض آن دایرکتوری جاری خواهد بود در قالبی ماشین‌خوان، با استفاده از .Dv MLSD . قالب نمایش را می‌توان با .Sq Ic remopts mlst Ar \&... تغییر داد. .It Ic mlst Op Ar remote-path نمایش جزئیات مربوط به .Ar remote-path .Pq که در صورت مشخص نشدن، پیش‌فرض آن دایرکتوری جاری خواهد بود در قالبی ماشین‌خوان، با استفاده از .Dv MLST . قالب نمایش را می‌توان با .Sq Ic remopts mlst Ar \&... تغییر داد. .It Ic mode Ar mode-name تنظیم حالت ارسالِ انتقال فایل به .Ar mode-name . مقدار پیش‌فرض .Pq و تنها حالت پشتیبانی‌شده برای .Ar mode-name برابر .Ql stream است. .It Ic modtime Ar remote-file نمایش زمان آخرین تغییر فایل در ماشین دوردست، در قالب .Li RFC 2822 . .It Ic more Ar file مترادفی برای .Ic page . .It Ic mput Ar local-files بسط دادن نویسه‌های عام (wildcards) در فهرست فایل‌های محلیِ ارائه‌شده به‌عنوان آرگومان و انجام یک .Ic put برای هر فایل در فهرست حاصل. برای جزئیات بسط نام فایل، .Ic glob را ببینید. نام فایل‌های حاصل سپس مطابق با تنظیمات .Ic ntrans و .Ic nmap پردازش خواهند شد. .It Ic mreget Ar remote-files مانند .Ic mget ، اما به‌جای .Ic get یک .Ic reget انجام می‌دهد. .It Ic msend Ar local-files مترادفی برای .Ic mput . .It Ic newer Ar remote-file Op Ar local-file دریافت فایل تنها در صورتی که زمان آخرین تغییر فایل دوردست، تازه‌تر از فایل در سیستم جاری باشد. اگر فایل در سیستم جاری وجود نداشته باشد، فایل دوردست .Ic newer (تازه‌تر) تلقی می‌شود. در غیر این صورت، این دستور هم‌ارز با .Ic get است. .It Ic nlist Op Ar remote-path Op Ar local-file مترادفی برای .Ic ls . .It Ic nmap Op Ar inpattern outpattern تنظیم یا لغو سازوکار نگاشت نام فایل. اگر هیچ آرگومانی مشخص نشود، سازوکار نگاشت نام فایل لغو می‌شود. اگر آرگومان‌ها مشخص شوند، نام فایل‌های دوردست هنگام دستورهای .Ic mput و دستورهای .Ic put که بدون نام فایل مقصد دوردست صادر شده‌اند، نگاشت می‌شوند. اگر آرگومان‌ها مشخص شوند، نام فایل‌های محلی هنگام دستورهای .Ic mget و دستورهای .Ic get که بدون نام فایل مقصد محلی صادر شده‌اند، نگاشت می‌شوند. این دستور هنگام اتصال به یک رایانهٔ دوردست .No non\- Ns Ux با قراردادها یا رویه‌های متفاوت نام‌گذاری فایل سودمند است. این نگاشت از الگوی تعیین‌شده توسط .Ar inpattern و .Ar outpattern پیروی می‌کند. .Pp .Ar inpattern الگویی برای نام فایل‌های ورودی است .Po که ممکن است تا پیش از این مطابق با تنظیمات .Ic ntrans و .Ic case پردازش شده باشند .Pc . الگوسازی متغیرها با گنجاندن توالی‌های .Ql $1 , .Ql $2 , \&...\|, .Ql $9 در .Ar inpattern انجام می‌پذیرد. از .Ql \e برای جلوگیری از این رفتار ویژه با نویسهٔ .Ql $ استفاده کنید. تمامی نویسه‌های دیگر به‌صورت لفظی تلقی می‌شوند و برای تعیین مقادیر متغیر .Ic nmap .Op Ar inpattern به کار می‌روند. برای نمونه، با فرض .Ar inpattern برابر .Ql $1.$2 و نام فایل دوردست .Ql mydata.data ، متغیر .Ql $1 دارای مقدار .Ql mydata و .Ql $2 دارای مقدار .Ql data خواهد بود. .Pp الگوی .Ar outpattern نام فایلِ نگاشت‌شدهٔ حاصل را تعیین می‌کند. توالی‌های .Ql $1 , .Ql $2 , \&...\|, .Ql $9 با هر مقداری که از الگوی .Ar inpattern حاصل شود جایگزین می‌شوند. توالی .Ql $0 با نام فایل اصلی جایگزین می‌شود. علاوه بر این، توالی .Sm off .Li \&[ Ar seq1 Li \&, Ar seq2 Li \&] .Sm on در صورتی که .Ar seq1 یک رشتهٔ تهی نباشد با .Ar seq1 جایگزین می‌شود؛ در غیر این صورت با .Ar seq2 جایگزین خواهد شد. برای نمونه، دستور .Pp .Dl nmap $1.$2.$3 [$1,$2].[$2,file] .Pp نام فایل خروجی .Ql myfile.data را برای نام‌های ورودی .Ql myfile.data و .Ql myfile.data.old ، نام فایل .Ql myfile.file را برای نام ورودی .Ql myfile ، و .Ql myfile.myfile را برای نام فایل ورودی .Ql \&.myfile تولید می‌کند. فاصله‌ها ممکن است در .Ar outpattern گنجانده شوند، همان‌گونه که در این مثال نشان داده شده است: .Pp .Dl nmap $1 sed "s/ *$//" > $1 .Pp از نویسهٔ .Ql \e برای جلوگیری از رفتار ویژه با نویسه‌های .Ql $ , .Ql \&[ , .Ql \&] , و .Ql \&, استفاده کنید. .It Ic ntrans Op Ar inchars Op Ar outchars تنظیم یا لغو سازوکار تبدیل نویسه‌های نام فایل. اگر هیچ آرگومانی مشخص نشود، سازوکار تبدیل نویسه‌های نام فایل لغو می‌شود. اگر آرگومان‌ها مشخص شوند، نویسه‌ها در نام فایل‌های دوردست هنگام دستورهای .Ic mput و دستورهای .Ic put که بدون نام فایل مقصد دوردست صادر شده‌اند، تبدیل می‌شوند. اگر آرگومان‌ها مشخص شوند، نویسه‌ها در نام فایل‌های محلی هنگام دستورهای .Ic mget و دستورهای .Ic get که بدون نام فایل مقصد محلی صادر شده‌اند، تبدیل می‌شوند. این دستور هنگام اتصال به یک رایانهٔ دوردست .No non\- Ns Ux با قراردادها یا رویه‌های متفاوت نام‌گذاری فایل سودمند است. نویسه‌هایی از نام فایل که با نویسه‌ای در .Ar inchars مطابقت داشته باشند با نویسهٔ متناظر در .Ar outchars جایگزین می‌شوند. اگر موقعیت نویسه در .Ar inchars بزرگ‌تر از طول .Ar outchars باشد، آن نویسه از نام فایل حذف می‌شود. .It Ic open Ar host Op Ar port برقراری اتصال به کارساز .Tn FTP مشخص‌شده در .Ar host . می‌توان یک شماره درگاه اختیاری را مشخص کرد که در این صورت، .Nm تلاش خواهد کرد تا با یک کارساز .Tn FTP در آن درگاه ارتباط برقرار کند. اگر گزینهٔ .Ic "set auto-login" روشن باشد (پیش‌فرض)، .Nm همچنین تلاش خواهد کرد تا کاربر را به‌طور خودکار به کارساز .Tn FTP وارد کند (پایین را ببینید). .It Ic page Ar file دریافت .Ic file و نمایش آن با برنامه‌ای که توسط گزینهٔ .Ic "set pager" مشخص شده است. .It Ic passive Op Cm auto تغییر وضعیت حالت غیرفعال (passive) (در صورتی که هیچ آرگومانی داده نشود). اگر .Cm auto داده شود، چنان عمل می‌کند که گویی .Ev FTPMODE روی .Sq auto تنظیم شده است. اگر حالت غیرفعال روشن باشد (پیش‌فرض)، .Nm برای تمام اتصالات داده یک دستور .Dv PASV ارسال خواهد کرد، به‌جای یکدستور .Dv PORT . دستور .Dv PASV درخواست می‌کند که سرور دوردست یک درگاه برای اتصال داده باز کند و نشانی آن درگاه را بازگرداند. سرور دوردست به آن درگاه گوش فرا می‌دهد و کلاینت به آن متصل می‌شود. هنگام استفاده از دستور سنتی‌تر .Dv PORT \c ، کلاینت به یک درگاه گوش فرا می‌دهد و آن نشانی را به سرور دوردست ارسال می‌کند، که متعاقباً به آن وصل می‌شود. حالت غیرفعال (Passive mode) هنگامی مفید است که از .Nm از طریق یک مسیریاب دروازه (gateway router) یا میزبانی که جهت ترافیک را کنترل می‌کند، استفاده شود. .Po توجه داشته باشید هرچند طبق .Li RFC 1123 سرورهای .Tn FTP ملزم به پشتیبانی از دستور .Dv PASV هستند، برخی از آن‌ها این کار را نمی‌کنند. .Pc .It Ic pdir Op Ar remote-path دستور .Ic dir .Op Ar remote-path را اجرا کرده و نتیجه را با برنامه‌ای که توسط گزینهٔ .Ic "set pager" مشخص شده است نمایش می‌دهد. .It Ic pls Op Ar remote-path دستور .Ic ls .Op Ar remote-path را اجرا کرده و نتیجه را با برنامه‌ای که توسط گزینهٔ .Ic "set pager" مشخص شده است نمایش می‌دهد. .It Ic pmlsd Op Ar remote-path دستور .Ic mlsd .Op Ar remote-path را اجرا کرده و نتیجه را با برنامه‌ای که توسط گزینهٔ .Ic "set pager" مشخص شده است نمایش می‌دهد. .It Ic preserve وضعیت حفظ زمان‌های تغییر روی فایل‌های دریافت‌شده را تغییر می‌دهد. .It Ic progress نمایش نوار پیشرفت انتقال را فعال یا غیرفعال می‌کند. نوار پیشرفت برای انتقالی که .Ar local-file آن .Sq Fl یا دستوری باشد که با .Ql \&| شروع می‌شود غیرفعال خواهد شد. برای اطلاعات بیشتر به .Sx FILE NAMING CONVENTIONS مراجعه کنید. فعال کردن .Ic progress دستور .Ic hash را غیرفعال می‌کند. .It Ic prompt حالت اعلان تعاملی را فعال یا غیرفعال می‌کند. اعلان تعاملی در طول انتقال چند فایل رخ می‌دهد تا به کاربر امکان دهد فایل‌ها را به‌صورت انتخابی دریافت یا ذخیره کند. اگر اعلان غیرفعال باشد (پیش‌فرض فعال است)، هر دستور .Ic mget یا .Ic mput همهٔ فایل‌ها را منتقل خواهد کرد، و هر دستور .Ic mdelete همهٔ فایل‌ها را حذف خواهد نمود. .Pp هنگامی که اعلان فعال است، دستورهای زیر در اعلان در دسترس هستند: .Bl -tag -width 2n -offset indent .It Cm a پاسخ .Sq yes به فایل فعلی، و پاسخ خودکار .Sq yes به تمامی فایل‌های باقی‌مانده برای دستور فعلی. .It Cm n پاسخ .Sq no \c ، و عدم انتقال فایل. .It Cm p پاسخ .Sq yes به فایل فعلی، و خاموش کردن حالت اعلان .Po گویی دستور .Ic prompt off داده شده است .Pc . .It Cm q پایان دادن به عملیات فعلی. .It Cm y پاسخ .Sq yes \c ، و انتقال فایل. .It Cm \&? نمایش یک پیام راهنما. .El .Pp هر پاسخ دیگری به عنوان .Sq yes برای فایل فعلی در نظر گرفته خواهد شد. .It Ic proxy Ar ftp-command یک دستور .Tn FTP را روی یک اتصال کنترلی ثانویه اجرا می‌کند. این دستور امکان اتصال هم‌زمان به دو سرور .Tn FTP دوردست را جهت انتقال فایل‌ها بین آن دو سرور فراهم می‌سازد. نخستین دستور .Ic proxy باید یک .Ic open باشد، تا اتصال کنترلی ثانویه برقرار گردد. دستور .Sq Li "proxy \&?" را برای مشاهدهٔ سایر دستورهای .Tn FTP قابل اجرا در اتصال ثانویه وارد کنید. دستورهای زیر هنگامی که پیشوند .Ic proxy\^ داشته باشند، رفتار متفاوتی خواهند داشت: .Ic open ماکروهای جدیدی در طول فرآیند ورود خودکار تعریف نخواهد کرد، .Ic close تعاریف ماکروهای موجود را پاک نخواهد کرد، .Ic get و .Ic mget فایل‌ها را از میزبان در اتصال کنترلی اولیه به میزبان در اتصال کنترلی ثانویه منتقل می‌کنند، و .Ic put \c ، .Ic mput و .Ic append فایل‌ها را از میزبان در اتصال کنترلی ثانویه به میزبان در اتصال کنترلی اولیه منتقل می‌نمایند. انتقال فایل شخص ثالث به پشتیبانی از دستور .Dv PASV در پروتکل .Tn FTP توسط سرور روی اتصال کنترلی ثانویه بستگی دارد. .It Ic put Ar local-file Op Ar remote-file یک فایل محلی را روی ماشین دوردست ذخیره می‌کند. اگر .Ar remote-file مشخص نشده باقی بماند، نام فایل محلی پس از پردازش مطابق با هر یک از تنظیمات .Ic ntrans یا .Ic nmap برای نام‌گذاری فایل دوردست استفاده می‌شود. انتقال فایل از تنظیمات فعلی برای .Ic type \c ، .Ic form \c ، .Ic mode و .Ic struct استفاده می‌کند. .It Ic pwd نام دایرکتوری کاری فعلی روی ماشین دوردست را چاپ می‌کند. .It Ic quit مترادفی برای .Ic bye . .It Ic quote Op Ar arg ... آرگومان‌های مشخص‌شده عیناً به سرور .Tn FTP دوردست ارسال می‌شوند. .It Ic rate Ar direction Oo Ar maximum Oo Ar increment Oc Oc حداکثر نرخ انتقال را به .Ar maximum بایت بر ثانیه محدود می‌کند. اگر .Ar maximum برابر با 0 باشد، محدودیت را غیرفعال می‌کند..Pp مقدار .Ar direction می‌تواند یکی از موارد زیر باشد: .Bl -tag -width ".Cm all" -offset indent -compact .It Cm all هر دو جهت. .It Cm get انتقال‌های ورودی. .It Cm put انتقال‌های خروجی. .El .Pp مقدار .Ar maximum می‌تواند در حین اجرا به اندازهٔ .Ar increment بایت (پیش‌فرض: ۱۰۲۴) با هر بار دریافت یک سیگنال مشخص تغییر یابد: .Bl -tag -width ".Dv SIGUSR1" -offset indent .It Dv SIGUSR1 افزایش .Ar maximum به اندازهٔ .Ar increment بایت. .It Dv SIGUSR2 کاهش .Ar maximum به اندازهٔ .Ar increment بایت. نتیجه باید یک عدد مثبت باشد. .El .Pp اگر .Ar maximum مشخص نشود، نرخ‌های محدودسازی فعلی نمایش داده می‌شوند. .Pp نکته: .Ic rate هنوز برای انتقال‌های .Ic type Cm ascii پیاده‌سازی نشده است. .It Ic rcvbuf Ar size تنظیم اندازهٔ بافر دریافت سوکت به .Ar size . .It Ic recv Ar remote-file Op Ar local-file مترادفی برای .Ic get . .It Ic reget Ar remote-file Op Ar local-file دستور .Ic reget مانند .Ic get عمل می‌کند، با این تفاوت که اگر .Ar local-file وجود داشته باشد و کوچک‌تر از .Ar remote-file باشد، فرض می‌شود که .Ar local-file یک رونوشت با انتقال ناقص از .Ar remote-file است و انتقال از نقطهٔ قطعیِ به نظر رسیده ادامه می‌یابد. این دستور هنگام انتقال فایل‌های بسیار بزرگ روی شبکه‌هایی که مستعد قطع اتصال هستند مفید است. .It Ic remopts Ar command Op Ar command-options تنظیم گزینه‌ها روی کارگزار دوردست .Tn FTP برای .Ar command به .Ar command-options .Pq که نبود آن بر مبنای هر دستور به طور خاص مدیریت می‌شود . دستورهای دوردست .Tn FTP که پشتیبانی آن‌ها از گزینه‌ها شناخته شده است عبارتند از: .Dv MLST .Po استفاده شده برای .Dv MLSD و .Dv MLST .Pc . .It Ic rename Op Ar from Op Ar to تغییر نام فایل .Ar from در دستگاه دوردست به فایل .Ar to . .It Ic reset پاک کردن صف پاسخ. این دستور ترتیب دستور/پاسخ را با کارگزار دوردست .Tn FTP مجدداً همگام‌سازی می‌کند. همگام‌سازی مجدد ممکن است پس از نقض پروتکل .Tn FTP توسط کارگزار دوردست ضروری باشد. .It Ic restart Ar marker شروع مجدد دستور بلافاصله بعدیِ .Ic get یا .Ic put در .Ar marker مشخص‌شده. در سامانه‌های .Ux ، نشانگر معمولاً یک آفست بایتی درون فایل است. .It Ic rhelp Op Ar command-name درخواست راهنما از کارگزار دوردست .Tn FTP . اگر یک .Ar command-name مشخص شده باشد، آن نیز به کارگزار ارسال می‌شود. .It Ic rmdir Ar directory-name حذف یک دایرکتوری در دستگاه دوردست. .It Ic rstatus Op Ar remote-file بدون آرگومان، وضعیت دستگاه دوردست را نمایش می‌دهد. اگر .Ar remote-file مشخص شده باشد، وضعیت .Ar remote-file در دستگاه دوردست را نشان می‌دهد. .It Ic runique تغییر وضعیت ذخیره‌سازی فایل‌ها در سامانهٔ محلی با نام‌های یکتا. اگر فایلی از پیش با نامی برابر با نام فایل محلیِ هدف برای یک دستور .Ic get یا .Ic mget وجود داشته باشد، یک .Ql \&.1 به انتهای نام اضافه می‌شود. اگر نام حاصل با فایل موجود دیگری مطابقت داشته باشد، یک .Ql \&.2 به نام اصلی افزوده می‌شود. اگر این روند تا .Ql .99 ادامه یابد، یک پیام خطا چاپ شده و انتقال انجام نخواهد شد. نام فایل یکتای تولید شده گزارش می‌شود. توجه داشته باشید که .Ic runique بر فایل‌های محلی تولید شده از یک دستور پوسته تأثیری نخواهد داشت (به بخش زیر مراجعه کنید). مقدار پیش‌فرض غیرفعال (off) است. .It Ic send Ar local-file Op Ar remote-file مترادفی برای .Ic put . .It Ic sendport تغییر وضعیت استفاده از دستورهای .Dv PORT . به‌طور پیش‌فرض، .Nm هنگام برقراری اتصال برای هر انتقال داده تلاش می‌کند از یک دستور .Dv PORT استفاده کند. استفاده از دستورهای .Dv PORT می‌تواند از تأخیرها هنگام انتقال چندگانهٔ فایل‌ها جلوگیری کند. اگر دستور .Dv PORT ناموفق باشد، .Nm از درگاه دادهٔ پیش‌فرض استفاده خواهد کرد. هنگامی که استفاده از دستورهای .Dv PORT غیرفعال باشد، هیچ تلاشی برای استفاده از دستورهای .Dv PORT برای هر انتقال داده صورت نخواهد گرفت. این امر برای برخی پیاده‌سازی‌های .Tn FTP که دستورهای .Dv PORT را نادیده می‌گیرند اما به نادرستی اعلام می‌کنند که پذیرفته شده‌اند، مفید است. .It Ic set Op Ar option Ar value تنظیم .Ar option به .Ar value . اگر .Ar option و .Ar value داده نشوند، همهٔ گزینه‌ها و مقادیر آن‌ها نمایش داده می‌شوند. مقدارهای پشتیبانی‌شده برای .Ar option عبارتند از: .Bl -tag -width ".Cm sslnoverify" -offset indent .It Cm anonpass به‌طور پیش‌فرض .Ev $FTPANONPASS .It Cm ftp_proxy به‌طور پیش‌فرض .Ev $ftp_proxy . .It Cm http_proxy به‌طور پیش‌فرض .Ev $http_proxy . .It Cm https_proxy به‌طور پیش‌فرض .Ev $https_proxy . .It Cm no_proxy به‌طور پیش‌فرض .Ev $no_proxy . .It Cm pager به‌طور پیش‌فرض .Ev $PAGER . .It Cm prompt به‌طور پیش‌فرض .Ev $FTPPROMPT . .It Cm rprompt به‌طور پیش‌فرض .Ev $FTPRPROMPT . .It Cm sslnoverify به‌طور پیش‌فرض .Ev $FTPSSLNOVERIFY . .El .It Ic site Op Ar arg ... آرگومان‌های مشخص‌شده عینا به‌عنوان یک دستور .Dv SITE به کارگزار دوردست .Tn FTP ارسال می‌شوند. .It Ic size Ar remote-file بازگرداندن اندازهٔ .Ar remote-file در دستگاه دوردست. .It Ic sndbuf Ar size تنظیم اندازهٔ بافر ارسال سوکت به .Ar size . .It Ic status نمایش وضعیت فعلی .Nm tnftp . .It Ic struct Ar struct-name تنظیم ساختارهای دادهٔ انتقال فایل به .Ar struct-name . تنها .Ar struct-name پشتیبانی‌شده (و پیش‌فرض) .Ql file است. .It Ic sunique تغییر وضعیت ذخیره‌سازی فایل‌ها در دستگاه دوردست با نام‌های فایل یکتا. کارگزار دوردست .Tn FTP باید پشتیبانی کنددستور .Dv STOU پروتکل .Tn FTP برای اتمام موفقیت‌آمیز لازم است. سرور دوردست نام یکتا را گزارش خواهد کرد. مقدار پیش‌فرض off است. .It Ic system نمایش نوع سیستم‌عامل در حال اجرا روی ماشین دوردست. .It Ic tenex مترادفی برای .Ic type Cm tenex . .It Ic throttle مترادفی برای .Ic rate . .It Ic trace تغییر وضعیت ردگیری بسته‌ها. .It Ic type Op Ar type-name تنظیم نوع دادهٔ انتقال فایل به .Ar type-name . اگر هیچ نوعی مشخص نشود، نوع کنونی چاپ می‌شود. مقدارهای پشتیبانی‌شده برای .Ar type-name عبارتند از: .Bl -tag -width "binary" -offset indent .It Cm ascii اسکی شبکه (Network ASCII). این نوع پیش‌فرض است. .It Cm binary انتقال باینری ۸-بیتی، بدون هیچ‌گونه تبدیل. .It Cm ebcdic انتقال EBCDIC. در .Nm پیاده‌سازی نشده است. .It Cm image مترادفی برای .Ic type Cm binary . .It Cm tenex تنظیم نوع انتقال فایل به نوع مورد نیاز برای انتقال باینری با ماشین‌های .Tn TENEX ، با اندازه بایت محلی ۸. .El .It Ic umask Op Ar newmask تنظیم umask پیش‌فرض در سرور دوردست روی .Ar newmask . اگر .Ar newmask مشخص نشود، umask کنونی چاپ می‌شود. .It Ic unset Ar option لغو تنظیم .Ar option . برای اطلاعات بیشتر به .Ic set مراجعه کنید. .It Ic usage Ar command چاپ پیام نحوهٔ استفاده برای .Ar command . .It Ic user Ar user-name Oo Ar password Oo Ar account Oc Oc شناسایی هویت خود در سرور .Tn FTP دوردست. اگر .Ar password مشخص نشده باشد و سرور به آن نیاز داشته باشد، .Nm آن را از کاربر درخواست خواهد کرد (پس از غیرفعال کردن پژواک محلی). اگر فیلد .Ar account مشخص نشده باشد و سرور .Tn FTP به آن نیاز داشته باشد، از کاربر درخواست خواهد شد. اگر فیلد .Ar account مشخص شده باشد، چنانچه سرور دوردست برای ورود به آن نیازی نداشته باشد، پس از تکمیل توالی ورود، یک دستور account به سرور دوردست ارسال خواهد شد. مگر اینکه .Nm با غیرفعال بودن .Dq auto-login فراخوانی شده باشد، این فرایند به‌طور خودکار در اتصال اولیه به سرور .Tn FTP انجام می‌شود. .It Ic verbose تغییر وضعیت حالت پرگویی (verbose). در حالت پرگویی، تمام پاسخ‌های سرور .Tn FTP به کاربر نمایش داده می‌شوند. علاوه بر این، اگر حالت پرگویی روشن باشد، هنگام تکمیل انتقال فایل، آمارهای مربوط به کارایی انتقال گزارش می‌شوند. به‌طور پیش‌فرض، حالت پرگویی روشن است. .It Ic xferbuf Ar size تنظیم اندازهٔ بافرهای ارسال و دریافت سوکت روی .Ar size . اگر .Ar size برابر با 0 باشد، از مقدارهای پیش‌فرض سیستم‌عامل استفاده می‌شود. .It Ic \&? Op Ar command مترادفی برای .Ic help . .El .Pp آرگومان‌های دستوری که دارای فاصله‌های درونی هستند می‌توانند درون نشانه‌های نقل‌قول .Ql \&\(dq قرار گیرند. .Pp دستورهایی که تنظیمات را تغییر وضعیت می‌دهند می‌توانند یک آرگومان صریح .Ic on یا .Ic off بپذیرند تا وضعیت تنظیمات را به‌طور مناسب اعمال کنند. .Pp دستورهایی که یک شمارش بایت را به عنوان آرگومان دریافت می‌کنند .Po به‌عنوان مثال، .Ic hash ، .Ic rate و .Ic xferbuf .Pc از یک پسوند اختیاری روی آرگومان پشتیبانی می‌کنند که تفسیر آرگومان را تغییر می‌دهد. پسوندهای پشتیبانی‌شده عبارتند از: .Bl -tag -width 3n -offset indent -compact .It Li b هیچ تغییری ایجاد نمی‌کند. (اختیاری) .It Li k کیلو؛ ضرب آرگومان در 1024 .It Li m مگا؛ ضرب آرگومان در 1048576 .It Li g گیگا؛ ضرب آرگومان در 1073741824 .El .Pp اگر .Nm در حین انجام یک انتقال، سیگنال .Dv SIGINFO .Po آرگومان .Cm status از .Xr stty 1 را ببینید .Pc یا .Dv SIGQUIT را دریافت کند، آمارهای نرخ انتقال کنونی در خروجی خطای استاندارد و در همان قالب پیام تکمیل استاندارد نوشته خواهند شد..Sh "دریافت خودکار فایل‌ها (AUTO-FETCHING FILES)" علاوه بر دستورهای استاندارد، این نسخه از .Nm از قابلیت دریافت خودکار (auto-fetch) پشتیبانی می‌کند. برای فعال کردن دریافت خودکار، کافی است فهرستی از نام‌های میزبان/فایل‌ها را در خط فرمان مشخص کنید. .Pp قالب‌های زیر نحو معتبری برای یک جزء دریافت خودکار هستند: .Bl -tag -width "FOO " .\" [user@]host:[path][/] .It Oo Ar user Ns Li \&@ Oc Ns Ar host Ns Li \&: Ns Oo Ar path Oc \ Ns Oo Li / Oc قالب .Dq کلاسیک .Tn FTP . .Pp اگر .Ar path حاوی یک نویسهٔ تطبیق الگو (glob) باشد و قابلیت globbing فعال باشد، (ببینید .Ic glob ) , آن‌گاه معادل دستور .Ic mget Ar path اجرا می‌شود. .Pp اگر جزء دایرکتوری از .Ar path هیچ نویسهٔ تطبیق الگویی نداشته باشد، به‌صورت محلی با نام basename (ببینید .Xr basename 1 ) مربوط به .Ic path , در دایرکتوری جاری ذخیره می‌شود. در غیر این صورت، نام کامل دوردست به‌عنوان نام محلی، نسبت به دایرکتوری ریشهٔ محلی استفاده می‌شود. .\" ftp://[user[:password]@]host[:port]/path[/][;type=type] .It Li ftp:// Ns Oo Ar user Ns Oo Ns Li \&: Ns Ar password Oc Ns Li \&@ Oc \ Ns Ar host Ns Oo Li \&: Ns Ar port Oc Ns Li / Ns Ar path Ns Oo Li / Oc \ Ns Oo Li ;type= Ns Ar type Oc یک .Tn FTP URL که در صورت تعریف نشدن .Ic "set ftp_proxy" با استفاده از پروتکل .Tn FTP دریافت می‌شود. در غیر این صورت، URL با استفاده از .Tn HTTP از طریق پراکسی تعریف‌شده در .Ic "set ftp_proxy" انتقال می‌یابد. اگر .Ic "set ftp_proxy" تعریف نشده باشد و .Ar user داده شده باشد، ورود به سیستم با عنوان .Ar user انجام می‌شود. در این حالت، در صورت ارائه از .Ar password استفاده می‌شود؛ در غیر این صورت رمز عبور از کاربر درخواست خواهد شد. .Pp اگر پسوند .Ql \&;type=A یا .Ql \&;type=I ارائه شود، آن‌گاه نوع انتقال (به ترتیب) به‌صورت .Ic type Cm ascii یا .Ic type Cm binary انجام خواهد شد. نوع پیش‌فرض انتقال .Ic type Cm binary است. .Pp به‌منظور سازگاری با .Li RFC 3986 , ابزار .Nm بخش .Ar path از یک URL دریافت خودکارِ .Ql ftp:// را به صورت زیر تفسیر می‌کند: .Bl -bullet .It نویسهٔ .Ql / بلافاصله پس از .Ar host Ns Oo Li \&: Ns Ar port Oc به‌عنوان یک جداکننده پیش از .Ar path تفسیر می‌شود، نه به‌عنوان بخشی از خود .Ar path . .It مسیر .Ar path به‌صورت فهرستی از اجزای نام که با .So Li / Sc جدا شده‌اند تفسیر می‌شود. برای همهٔ این اجزا به جز آخرین جزء، .Nm معادل یک دستور .Ic cd را اجرا می‌کند. برای آخرین جزء مسیر، .Nm معادل یک دستور .Ic get را اجرا می‌کند. .It اجزای نام خالی، که از وجود .Ql // درون .Ar path یا از یک .Ql / اضافی در ابتدای .Ar path ناشی می‌شوند، موجب اجرای معادل یک دستور .Ic cd بدون نام دایرکتوری خواهند شد. بعید است این مورد مفید باشد. .It هر کُد .Sq Cm \&% Ns Ar XX\^ (طبق .Li RFC 3986 ) درون اجزای مسیر رمزگشایی می‌شود، که در آن .Ar XX نشان‌دهندهٔ کُد یک نویسه در مبنای شانزده (هگزادسیمال) است. این رمزگشایی پس از تقسیم .Ar path به اجزای سازنده، اما پیش از استفاده از هر جزء در معادل یک دستور .Ic cd یا .Ic get انجام می‌شود. برخی کدهای پرکاربرد عبارت‌اند از .Ql \&%2F (که نشان‌دهندهٔ .Ql / است) و .Ql \&%7E .Po که نشان‌دهندهٔ .Ql ~ است .Pc . .El .Pp تفسیر بالا پیامدهای زیر را به همراه دارد: .Bl -bullet .It مسیر نسبت به دایرکتوری پیش‌فرضِ ورود کاربر مشخص‌شده یا کاربر .Sq anonymous تفسیر می‌شود. اگر دایرکتوری .Pa / مورد نیاز است، از مسیر آغازینِ .Ql \&%2F استفاده کنید. اگر دایرکتوری خانگی یک کاربر مورد نیاز باشد .Pq و سرور دوردست از این نحو پشتیبانی کند ، از مسیر آغازینِ .Ql \&%7E Ns Ar user Ns Li / استفاده کنید. برای نمونه، جهت دریافت .Pa /etc/motd از .Ql localhost به‌عنوان کاربر .Ql myname با رمز عبور .Ql mypass ، از .Ql ftp://myname:mypass@localhost/%2fetc/motd استفاده کنید. .It دستورهای دقیق .Ic cd و .Ic get را می‌توان با انتخاب دقیق محل استفاده از .Ql / و محل استفاده از .Ql \&%2F (یا .Ql %2f ) کنترل کرد. برای نمونه، نشانی‌های URL زیر متناظر با معادل‌های دستورهای مشخص‌شده هستند: .Bl -tag -width "ftp://host/%2Fdir1%2Fdir2%2Ffile" .It Xo \" ftp://host/dir1/dir2/file .Sm off .Ic ftp:// Ar host .Ic / Ar dir1 .Ic / Ar dir2 .Ic / Ar file .Sm on .Xc .Ic cd Ar dir1 , .Ic cd Ar dir2 , .Ic get Ar file . .It Xo \" ftp://host/%2Fdir1/dir2/file .Sm off .Ic ftp:// Ar host .Ic /%2F Ar dir1 .Ic / Ar dir2 .Ic / Ar file .Sm on .Xc .Ic cd / Ns Ar dir1 , .Ic cd Ar dir2 , .Ic get Ar file . .It Xo \" ftp://host/dir1%2Fdir2/file .Sm off .Ic ftp:// Ar host .Ic / Ar dir1 .Ic %2F Ar dir2 .Ic / Ar file .Sm on .Xc .Ic cd Ar dir1 Ns Ic / Ns Ar dir2 , .Ic get Ar file . .El .It باید مجوز دسترسی مناسب برای هر یک از دایرکتوری‌های میانی که در معادل یک دستور .Ic cd به‌کار می‌روند، داشته باشید. .El .\" http://[user[:password]@]host[:port]/path .It Li http:// Ns Oo Ar user Ns Oo Li \&: Ns Ar password Oc Ns Li \&@ Oc \ Ns Ar host Ns Oo Li \&: Ns Ar port Oc Ns Li / Ns Ar path یک نشانی .Tn HTTP (URL) که با استفاده از پروتکل .Tn HTTP دریافت می‌شود. اگر .Ic "set http_proxy" تعریف شده باشد، به‌عنوان URL یک سرور پراکسی .Tn HTTP استفاده می‌شود. اگر برای دریافت .Ar path به مجوزدهی .Tn HTTP نیاز باشد، و .Ar user (و به‌صورت اختیاری .Ar password\^ ) در URL موجود باشد، از آن‌ها در نخستین تلاش برای احراز هویت استفاده می‌شود..\" https://[user[:password]@]host[:port]/path .It Li https:// Ns Oo Ar user Ns Oo Li \&: Ns Ar password Oc Ns Li \&@ Oc \ Ns Ar host Ns Oo Li \&: Ns Ar port Oc Ns Li / Ns Ar path یک نشانی .Tn HTTPS که با استفاده از پروتکل .Tn HTTPS دریافت می‌شود. اگر .Ic "set https_proxy" تعریف شده باشد، به‌عنوان نشانی یک کارساز پراکسی .Tn HTTPS به‌کار می‌رود. اگر برای دریافت .Ar path به احراز هویت .Tn HTTPS نیاز باشد، و .Ar user (و در صورت تمایل .Ar password\^ ) در نشانی مشخص شده باشند، در نخستین تلاش برای احراز هویت از آن‌ها استفاده می‌شود. .\" file:///path .It Li file:/// Ns Ar path یک نشانی محلی، کپی‌شده از .Pa / Ns Ar path روی میزبان محلی. .\" about: .It Li about\&: Ns Ar topic نمایش اطلاعات دربارهٔ .Ar topic ؛ هیچ فایلی برای این عنصرِ دریافتِ خودکار واکشی نمی‌شود. مقدارهای پشتیبانی‌شده عبارتند از: .Bl -tag -width "about:version" .It Li about:ftp اطلاعاتی دربارهٔ .Nm tnftp . .It Li about:version نسخهٔ .Nm tnftp . ارائهٔ آن هنگام گزارش مشکلات سودمند است. .El .El .Pp مگر در مواردی که در بالا به گونهٔ دیگری ذکر شده باشد، و اگر .Fl o Ar output داده نشده باشد، فایل در دایرکتوری جاری با نام .Xr basename 1 مربوط به .Ar path ذخیره می‌شود. توجه داشته باشید که در صورت دریافت تغییر مسیر .Tn HTTP ، عملیات واکشی با استفاده از نشانی هدف جدید ارائه‌شده توسط کارساز، و با .Ar path جدید متناظر دوباره تلاش می‌شود. برای جلوگیری از نوشتن روی نام‌های فایل غیرمنتظره، استفاده از .Fl o Ar output به‌طور صریح توصیه می‌شود. .Pp اگر یک قالب کلاسیک یا قالب نشانی .Tn FTP دارای یک .Ql / در انتها یا یک مؤلفهٔ .Ar path خالی باشد، آن‌گاه .Nm به پایگاه متصل شده و به دایرکتوری داده‌شده به‌عنوان مسیر .Ic cd می‌کند، و کاربر را در حالت تعاملی و آماده برای ورودی بیشتر رها می‌سازد. اگر از .Ic "set ftp_proxy" استفاده شود، این سازوکار کار نخواهد کرد. .Pp انتقال‌های مستقیم .Tn HTTP از HTTP 1.1 استفاده می‌کنند. انتقال‌های پراکسی‌شدهٔ .Tn FTP و .Tn HTTP از HTTP 1.0 استفاده می‌کنند. .Pp اگر .Fl R داده شود، تمام دریافت‌های خودکاری که از طریق پراکسی‌های .Tn FTP یا .Tn HTTP انجام نمی‌شوند، از سر گرفته خواهند شد. برای .Tn FTP ، این قابلیت با استفاده از .Ic reget به‌جای .Ic get پیاده‌سازی شده است. برای .Tn HTTP ، این ویژگی با استفاده از دستورالعمل .Sq "Range: bytes=" در .Tn "HTTP/1.1" پیاده‌سازی شده است. .Pp اگر احراز هویت WWW یا احراز هویت پراکسی WWW لازم باشد، برای وارد کردن نام کاربری و گذرواژه جهت احراز هویت از شما درخواست خواهد شد. .Pp هنگام مشخص کردن نشانی‌های عددی IPv6 در یک نشانی اینترنتی، باید نشانی را در کروشه قرار دهید. برای نمونه: .Ql ftp://[::1]:21/ . دلیل این امر این است که دونقطه هم در نشانی عددی IPv6 و هم به‌عنوان جداکنندهٔ شمارهٔ درگاه استفاده می‌شود..Sh "لغو انتقال فایل (ABORTING A FILE TRANSFER)" برای لغو یک انتقال فایل، از کلید وقفه پایانه (معمولاً Ctrl-C) استفاده کنید. انتقال‌های ارسالی فوراً متوقف خواهند شد. انتقال‌های دریافتی با ارسال یک دستور .Dv ABOR پروتکل .Tn FTP به سرور دوردست و نادیده گرفتن هرگونه داده دریافتی بعدی، متوقف خواهند شد. سرعتی که این کار در آن انجام می‌شود به پشتیبانی سرور دوردست از پردازش .Dv ABOR بستگی دارد. اگر سرور دوردست از دستور .Dv ABOR پشتیبانی نکند، خط فرمان تا زمانی که سرور دوردست ارسال فایل درخواستی را به پایان نرساند، ظاهر نخواهد شد. .Pp اگر توالی کلید وقفه پایانه زمانی استفاده شود که .Nm در انتظار دریافت پاسخ از سرور دوردست برای پردازش .Dv ABOR است، اتصال بسته خواهد شد. این کار با رفتار سنتی (که وقفه پایانه را در این مرحله نادیده می‌گیرد) تفاوت دارد، اما کاربردی‌تر در نظر گرفته می‌شود. .Sh "قراردادهای نام‌گذاری فایل (FILE NAMING CONVENTIONS)" فایل‌هایی که به عنوان آرگومان به دستورات .Nm داده می‌شوند، بر اساس قواعد زیر پردازش می‌شوند. .Bl -enum .It اگر نام فایل .Sq Fl مشخص شده باشد، .Va stdin (برای خواندن) یا .Va stdout (برای نوشتن) استفاده می‌شود. .It اگر نخستین نویسه نام فایل .Ql \&| , باشد، باقی‌مانده آرگومان به عنوان یک دستور پوسته (shell) تفسیر می‌شود. سپس .Nm با استفاده از .Xr popen 3 و آرگومان داده‌شده، یک پوسته را اجرا (fork) کرده و از stdout می‌خواند (یا در stdin می‌نویسد). اگر دستور پوسته شامل فاصله باشد، آرگومان باید در نقل‌قول قرار گیرد؛ به عنوان مثال .Ql \*q|\~ls\~\-lt\*q . یک مثال به‌ویژه کاربردی از این سازوکار عبارت است از: .Ql dir\~\*q\*q\~|more . .It در صورت عدم برقراری بررسی‌های بالا، اگر globbing فعال باشد، نام‌های فایل محلی بر اساس قواعد استفاده‌شده در .Xr csh 1 ; گسترش می‌یابند؛ دستور .Ic glob را ببینید. اگر دستور .Nm انتظار یک فایل محلی واحد را داشته باشد (مانند .Ic put ) , تنها نخستین نام فایل ایجادشده توسط عملیات globbing استفاده می‌شود. .It برای دستورات .Ic mget و دستورات .Ic get با نام فایل محلی مشخص‌نشده، نام فایل محلی همان نام فایل دوردست خواهد بود که ممکن است با یکی از تنظیمات .Ic case , .Ic ntrans , یا .Ic nmap تغییر داده شود. سپس در صورت روشن بودن .Ic runique , نام فایل حاصل ممکن است تغییر یابد. .It برای دستورات .Ic mput و دستورات .Ic put با نام فایل دوردست مشخص‌نشده، نام فایل دوردست همان نام فایل محلی است که ممکن است توسط یکی از تنظیمات .Ic ntrans یا .Ic nmap تغییر یابد. اگر .Ic sunique روشن باشد، نام فایل حاصل ممکن است توسط سرور دوردست تغییر یابد. .El.Sh "پارامترهای انتقال فایل (FILE TRANSFER PARAMETERS)" مشخصات .Tn FTP در RFC 959 پارامترهای بسیاری را تعیین می‌کند که ممکن است بر انتقال فایل تأثیر بگذارند. .Pp نوع داده پارامتر انتقال فایل به عنوان یکی از موارد .Dq "نوع ASCII" , .Dq "نوع EBCDIC" , .Dq "نوع image" (که با عنوان binary نیز شناخته می‌شود)، و .Dq "نوع local" (عمدتاً برای سامانه‌های .Tn PDP Ns -10 و .Tn PDP Ns -20 Ns ) مشخص می‌شود. .Nm تنها .Ic type Cm ascii , .Ic type Cm binary , .Ic type Cm image و .Ic type Cm tenex با اندازه بایت محلی ۸ را پیاده‌سازی می‌کند. .Pp .Nm تنها از مقادیر پیش‌فرض برای سایر پارامترهای انتقال فایل از طریق دستورهای زیر پشتیبانی می‌کند: .Ic mode , .Ic form و .Ic struct . .Sh "فایل .netrc (THE .netrc FILE)" فایل .Pa .netrc حاوی اطلاعات ورود و مقداردهی اولیه است که توسط فرایند ورود خودکار استفاده می‌شود. این فایل در دایرکتوری خانگی کاربر قرار دارد، مگر اینکه با گزینه .Fl N Ar netrc بازنویسی شده یا در متغیر محیطی .Ev NETRC مشخص شده باشد. توکن‌های زیر شناسایی می‌شوند؛ آن‌ها می‌توانند با فاصله، تب یا خط جدید از یکدیگر جدا شوند: .Bl -tag -width password .It Ic machine Ar name یک ماشین دوردست با نام .Ar name را مشخص می‌کند. فرایند ورود خودکار فایل .Pa .netrc را برای یافتن توکن .Ic machine که با ماشین دوردستِ مشخص‌شده در خط فرمان .Nm یا به عنوان آرگومان دستور .Ic open مطابقت دارد، جستجو می‌کند. به محض یافتن تطابق، توکن‌های بعدی در .Pa .netrc پردازش می‌شوند و با رسیدن به انتهای فایل یا مواجهه با یک توکن .Ic machine دیگر یا یک توکن .Ic default متوقف می‌شود. .It Ic default این توکن همانند .Ic machine Ar name است، با این تفاوت که .Ic default با هر نامی مطابقت می‌یابد. تنها یک توکن .Ic default می‌تواند وجود داشته باشد، و باید پس از تمام توکن‌های .Ic machine قرار گیرد. این مورد معمولاً به صورت زیر استفاده می‌شود: .Pp .Dl default login anonymous password user@site .Pp و بدین ترتیب ورود خودکار و ناشناس .Tn FTP را برای ماشین‌هایی که در .Pa .netrc مشخص نشده‌اند برای کاربر فراهم می‌کند. این رفتار را می‌توان با استفاده از پرچم .Fl n برای غیرفعال کردن ورود خودکار نادیده گرفت. .It Ic login Ar name یک کاربر را در ماشین دوردست مشخص می‌کند. در صورت وجود این توکن، فرایند ورود خودکار با استفاده از .Ar name مشخص‌شده اقدام به ورود می‌کند. .It Ic password Ar string یک گذرواژه ارائه می‌دهد. در صورت وجود این توکن، چنانچه کارگزار دوردست به عنوان بخشی از فرایند ورود به گذرواژه نیاز داشته باشد، فرایند ورود خودکار رشته مشخص‌شده را ارسال می‌کند. توجه داشته باشید که اگر این توکن در فایل .Pa .netrc برای هر کاربری غیر از .Ar anonymous وجود داشته باشد، در صورتی که .Pa .netrc توسط هر فردی غیر از کاربر قابل خواندن باشد، .Nm فرایند ورود خودکار را لغو خواهد کرد. .It Ic account Ar string یک گذرواژه حساب کاربری اضافی ارائه می‌دهد. در صورت وجود این توکن، اگر کارگزار دوردست به گذرواژه حساب اضافی نیاز داشته باشد، فرایند ورود خودکار رشته مشخص‌شده را ارسال می‌کند، یا اگر نیازی نباشد، فرایند ورود خودکار یک دستور .Dv ACCT صادر می‌کند. .It Ic macdef Ar name یک ماکرو تعریف می‌کند. این توکن عملکردی مشابه دستور .Ic macdef در .Nm دارد. یک ماکرو با نام مشخص‌شده تعریف می‌شود؛ محتوای آن از خط بعدی .Pa .netrc آغاز شده و تا رسیدن به یک خط خالی (نویسه‌های خط جدید متوالی) ادامه می‌یابد. همانند سایر توکن‌ها در فایل .Pa .netrc , یک .Ic macdef تنها برای تعریف .Ic machine پیش از خود معتبر است. یک مدخل .Ic macdef نمی‌تواند توسط چندین تعریف .Ic machine مورد استفاده قرار گیرد؛ بلکه باید پس از هر .Ic machine که قرار است با آن به کار رود، تعریف شود. اگر ماکرویی به نام .Ic init تعریف شود، به طور خودکار به عنوان آخرین مرحله در فرایند ورود خودکار اجرا می‌شود. برای مثال: .Bd -literal -offset indent default macdef init epsv4 off .Ed .Pp و به دنبال آن یک خط خالی قرار می‌گیرد. .El.Sh "ویرایش خط فرمان (COMMAND LINE EDITING)" .Nm از طریق کتابخانهٔ .Xr editline 3 از ویرایش تعاملی خط فرمان پشتیبانی می‌کند. این قابلیت با دستور .Ic edit فعال می‌شود، و اگر ورودی از یک tty باشد به‌طور پیش‌فرض فعال است. خط‌های قبلی را می‌توان با کلیدهای جهت‌نما فراخوانی و ویرایش کرد، و کلیدهای ویرایشی دیگر به سبک GNU Emacs نیز قابل استفاده هستند. .Pp کتابخانهٔ .Xr editline 3 توسط یک فایل .Pa .editrc پیکربندی می‌شود \(em برای اطلاعات بیشتر به .Xr editrc 5 مراجعه کنید. .Pp یک ترکیب کلید اضافی در .Nm در دسترس است تا تکمیل وابسته به زمینهٔ دستور و نام فایل (شامل تکمیل فایل‌های دوردست) را فراهم آورد. برای استفاده از این قابلیت، یک کلید را به دستور .Ic ftp-complete در .Xr editline 3 اختصاص دهید. به‌طور پیش‌فرض، این قابلیت به کلید TAB اختصاص یافته است. .Sh "اعلان خط فرمان (COMMAND LINE PROMPT)" به‌طور پیش‌فرض، .Nm اعلان خط فرمانی به‌صورت .Sq Li ftp>\~ به کاربر نمایش می‌دهد. این اعلان را می‌توان با دستور .Ic "set prompt" تغییر داد. .Pp با دستور .Ic "set rprompt" می‌توان یک اعلان را در سمت راست صفحه (پس از ورودی دستور) نمایش داد. .Pp دنباله‌های قالب‌بندی زیر با اطلاعات مشخص‌شده جایگزین می‌شوند: .Bl -tag -width "%% " -offset indent .It Li \&%/ دایرکتوری کاری دوردستِ فعلی. .\" %c[[0]n], %.[[0]n] .It Li \&%c Ns Oo Oo Li 0 Oc Ns Ar n Oc , Li \&%\&. Ns Oo Oo Li 0 Oc Ns Ar n Oc مؤلفهٔ پایانی دایرکتوری کاری دوردستِ فعلی، یا .Ar n مؤلفهٔ پایانی چنانچه رقم .Ar n مشخص شده باشد. اگر .Ar n با .Ql 0 آغاز شود، تعداد مؤلفه‌های نادیده‌گرفته‌شده در قالبِ .\" ``/trailing'' .Do .Sm off .Li / Li < Ar number Li > .Ar trailing .Sm on .Dc (برای .Ql \&%c ) یا .\" ``...trailing'' .Dq Li \&... Ns Ar trailing (برای .Ql \&%\&. ) پیش از مؤلفه(های) پایانی قرار می‌گیرد. .It Li \&%M نام میزبان دوردست. .It Li \&%m نام میزبان دوردست، تا نخستین نقطهٔ .Ql \&. . .It Li \&%n نام کاربری دوردست. .It Li \&%% یک نویسهٔ درصدِ تکی .Ql % . .El.Sh "محیط (ENVIRONMENT)" .Nm از متغیرهای محیطی زیر استفاده می‌کند: .Bl -tag -width "FTPSERVERPORT" .It Ev FTPANONPASS گذرواژه‌ای برای ارسال در انتقال ناشناس .Tn FTP . پیش‌فرض آن .Dq Li \&\`whoami\`@ است. .It Ev FTPMODE حالت عملیاتی پیش‌فرض را لغو می‌کند. مقادیر پشتیبانی‌شده عبارتند از: .Bl -tag -width "passive" .It Cm active فقط حالت فعال .Tn FTP .It Cm auto تشخیص خودکار غیرفعال یا فعال (این گزینه پیش‌فرض است) .It Cm gate حالت gate-ftp .It Cm passive فقط حالت غیرفعال .Tn FTP .El .It Ev FTPPROMPT اعلان خط فرمان مورد استفاده. پیش‌فرض آن .Sq Li ftp>\~ است. برای اطلاعات بیشتر به .Sx COMMAND LINE PROMPT مراجعه کنید. .It Ev FTPRPROMPT اعلان سمت راست خط فرمان مورد استفاده. پیش‌فرض یک رشتهٔ خالی است. برای اطلاعات بیشتر به .Sx COMMAND LINE PROMPT مراجعه کنید. .It Ev FTPSERVER میزبانی که در زمان فعال بودن .Ic gate به‌عنوان سرور gate-ftp استفاده می‌شود. .It Ev FTPSERVERPORT درگاهی که هنگام اتصال به سرور gate-ftp در زمان فعال بودن .Ic gate استفاده می‌شود. پیش‌فرض، درگاهی است که توسط جستجوی .Xr getservbyname 3 برای .Dq Li ftpgate/tcp برگردانده می‌شود. .It Ev FTPUSERAGENT مقداری که برای سرآیند User-Agent در .Tn HTTP ارسال می‌شود. .It Ev FTPSSLNOVERIFY برای عدم اعتبارسنجی گواهی‌های SSL، روی 1 تنظیم شود. .It Ev HOME برای مکان پیش‌فرض فایل .Pa .netrc در صورت وجود. .It Ev NETRC مکانی جایگزین برای فایل .Pa .netrc . .It Ev PAGER توسط دستورهای مختلف برای نمایش فایل‌ها استفاده می‌شود. در صورت خالی بودن یا تنظیم نشدن، پیش‌فرض .Xr more 1 است. .It Ev SHELL برای پوستهٔ پیش‌فرض. .It Ev ftp_proxy نشانی وب (URL) پروکسی .Tn FTP برای استفاده هنگام ارسال درخواست‌های URL در .Tn FTP (در صورت عدم تعریف، از پروتکل استاندارد .Tn FTP استفاده می‌شود). .Pp برای نکات بیشتر پیرامون استفاده از پروکسی به .Ev http_proxy مراجعه کنید. .It Ev http_proxy نشانی وب (URL) پروکسی .Tn HTTP برای استفاده هنگام ارسال درخواست‌های URL در .Tn HTTP . اگر احراز هویت پروکسی لازم باشد و نام کاربری و گذرواژه‌ای در این URL وجود داشته باشد، آن‌ها به‌طور خودکار در نخستین تلاش برای احراز هویت در پروکسی استفاده خواهند شد. .Pp اگر به نویسه‌های «ناامن» URL در نام کاربری یا گذرواژه نیاز باشد (برای مثال .Ql @ یا .Ql / ) آن‌ها را با کدگذاری .Ql \&% Ns Ar XX\^ در .Li RFC 3986 کدگذاری کنید. .Pp توجه داشته باشید که استفاده از نام کاربری و گذرواژه در .Ev ftp_proxy و .Ev http_proxy ممکن است با سایر برنامه‌هایی که از آن استفاده می‌کنند (مانند .Xr lynx 1 ) ناسازگار باشد. .Pp .Em نکته : این متغیر برای نشست‌های تعاملی استفاده نمی‌شود و فقط برای دریافت‌های خط فرمان به کار می‌رود. .It Ev https_proxy نشانی وب (URL) پروکسی .Tn HTTPS برای استفاده هنگام ارسال درخواست‌های URL در .Tn HTTPS . .Pp برای نکات بیشتر پیرامون استفاده از پروکسی به .Ev http_proxy مراجعه کنید. .It Ev no_proxy فهرستی از میزبان‌ها (یا دامنه‌ها) که با فاصله یا کاما از هم جدا شده‌اند و نباید برای آن‌ها از پروکسی استفاده شود. هر مدخل می‌تواند یک .Ql \&: Ns Ar port اختیاری در انتها داشته باشد که تطابق را به اتصال‌ها به آن درگاه محدود می‌کند. .El.Sh "حالت غیرفعال گسترش‌یافته و دیواره‌های آتش (EXTENDED PASSIVE MODE AND FIREWALLS)" برخی پیکربندی‌های دیواره آتش اجازه استفاده از حالت غیرفعال گسترش‌یافته را به .Nm نمی‌دهند. اگر متوجه شدید که حتی یک دستور ساده .Ic ls پس از چاپ پیامی مانند این معلق می‌ماند: .Pp .Dl 229 Entering Extended Passive Mode (|||58551|) .Pp در این صورت لازم است حالت غیرفعال گسترش‌یافته را با .Ic epsv4 off غیرفعال کنید. برای مشاهده مثالی از چگونگی خودکارسازی این کار، بخش بالا .Sx The .netrc File را ببینید. .Sh "همچنین ببینید (SEE ALSO)" .Xr getservbyname 3 , .Xr editrc 5 , .Xr services 5 , .Xr ftpd 8 .Sh "استانداردها (STANDARDS)" .Nm تلاش می‌کند با استانداردهای زیر سازگار باشد: .Bl -tag -offset indent -width 8n .It Li RFC 959 .Em File Transfer Protocol .It Li RFC 1123 .Em Requirements for Internet Hosts - Application and Support .It Li RFC 1635 .Em How to Use Anonymous FTP .It Li RFC 2389 .Em Feature negotiation mechanism for the File Transfer Protocol .It Li RFC 2428 .Em FTP Extensions for IPv6 and NATs .It Li RFC 2616 .Em Hypertext Transfer Protocol \&-- HTTP/1.1 .It Li RFC 2822 .Em Internet Message Format .It Li RFC 3659 .Em Extensions to FTP .It Li RFC 3986 .Em Uniform Resource Identifier (URI) .El .Sh "تاریخچه (HISTORY)" دستور .Nm در .Bx 4.2 معرفی شد. .Pp قابلیت‌های گوناگونی همچون ویرایش خط فرمان، تکمیل خودکار حساس به متن دستور و فایل، نوار پیشرفت پویا، دریافت خودکار فایل‌ها و URLها، حفظ زمان آخرین تغییر، محدودسازی نرخ انتقال، اعلان خط فرمان قابل پیکربندی، و دیگر بهبودها نسبت به .Nm استاندارد .Bx توسط .An Luke Mewburn .Aq lukem@NetBSD.org در .Nx 1.3 و نگارش‌های پس از آن پیاده‌سازی شدند. .Pp پشتیبانی از IPv6 توسط پروژه WIDE/KAME افزوده شد (اما بسته به اینکه سیستم‌عامل از IPv6 به روشی مشابه KAME پشتیبانی کند یا خیر، ممکن است در تمام نسخه‌های غیر NetBSD این برنامه موجود نباشد). .Sh "گزارش باگ‌ها (BUGS)" اجرای صحیح بسیاری از دستورات به رفتار مناسب از سوی سرور راه دور بستگی دارد. .Pp خطایی در پردازش نویسه‌های بازگشت به ابتدای سطر (carriage return) در کد انتقال .Ic type Cm ascii در .Bx 4.2 اصلاح شده است. این اصلاح ممکن است منجر به انتقال نادرست فایل‌های باینری به سرورهای .Bx 4.2 و از آن‌ها با استفاده از .Ic type Cm ascii شود. با استفاده از .Ic type Cm binary از بروز این مشکل جلوگیری کنید. .Pp .Nm فرض می‌کند که تمام آدرس‌های نگاشته‌شده به IPv4 .Po آدرس‌های IPv6 با قالبی شبیه به .Li ::ffff:10.1.1.1 .Pc نشان‌دهنده مقصدهای IPv4 هستند که می‌توانند توسط سوکت‌های .Dv AF_INET مدیریت شوند. با این حال، در برخی پیکربندی‌های شبکه IPv6، این فرض درست نیست. در چنین محیطی، آدرس‌های نگاشته‌شده به IPv4 باید مستقیماً به سوکت‌های .Dv AF_INET6 ارسال شوند. برای نمونه، اگر سایت شما از یک مبدل SIIT برای ترجمه IPv6 به IPv4 استفاده می‌کند، .Nm قادر به پشتیبانی از پیکربندی شما نخواهد بود.