علاوه بر روشهای گرافیکی برای انتقال فایل، یکی از سریعترین و قدرتمندترین راهها برای انتقال فایل به سرور لینوکسی (و برعکس)، استفاده از دستور scp مخفف Secure Copy (کپی امن) است. در ادامه آموزش انتقال فایل از طریق SCP خواهیم دید که مستقیماً ازطریق خط فرمان (ترمینال) کامپیوتر شما اجرا میشود و نیازی به نصب هیچ نرمافزار جانبی ندارد.
این دستور روی سیستمعاملهای macOS، لینوکس و همچنین نسخههای جدید ویندوز (۱۰ و ۱۱) بهصورت پیشفرض در دسترس است. در این راهنما ما هر دو سناریوی آپلود و دانلود فایل با scp را بررسی خواهیم کرد.
فیلم آموزش انتقال فایل ازطریق scp
فهرست مطالب
پیشنیاز: باز کردن ترمینال
- در ویندوز: برنامهی Command Prompt یا PowerShell را باز کنید.
- در macOS یا لینوکس: برنامهی Terminal را باز کنید.

آپلود فایل (انتقال از کامپیوتر به سرور)
در این سناریو، میخواهیم فایلی را از کامپیوتر محلی (Local) خود به سرور راه دور (Remote) خود که مثلا در سرور ابری ابر فردوسی قرار دارد منتقل کنیم. ساختار دستور scp برای آپلود به این شکل است:
scp [مسیر فایل مبدأ روی کامپیوتر] [نام کاربری]@[IP سرور]:[مسیر مقصد روی سرور]
مثال عملی:
فرض کنید فایلی به نام blog-list.xlsx روی دسکتاپ کامپیوتر خود داریم و میخواهیم آن را به پوشهی /home/ubuntu در سرور منتقل کنیم.
۱. ابتدا، با دستور cd (Change Directory) به پوشهای که فایلتان در آن قرار دارد بروید (مثلاً دسکتاپ)
cd C:\Users\pc\Desktop
۲. حالا دستور scp را اجرا کنید:
scp blog-list.xlsx ubuntu@87.236.166.113:/home/ubuntu/
تحلیل دستور:
- scp: دستور شروع انتقال
- blog-list.xlsx: فایل مبدأ روی کامپیوتر ما
- ubuntu@87.236.166.113: مشخصات سرور (نام کاربری ubuntu و آدرس IP)
- :/home/ubuntu/: مسیر مقصد روی سرور

پساز فشردن Enter، از شما رمز عبور سرور درخواست میشود. رمز را تایپ کنید و Enter بزنید.
(توجه: به دلایل امنیتی، هنگام تایپ رمز عبور، هیچ کاراکتری، نه ستاره و نه نقطه، نمایش داده نمیشود. شما فقط رمز را تایپ کرده و Enter را بزنید).
پساز تأیید رمز، فرایند آپلود آغاز شده و درصد پیشرفت آن نمایش داده میشود.
نکته (انتقال پوشه): اگر بهجای فایل، قصد انتقال یک پوشه (Directory) کامل را دارید، باید از آپشن r- (بهمعنای Recursive) قبل از نام پوشه استفاده کنید. (مانند: scp -r MyFolder ubuntu@…)
دانلود فایل (انتقال از سرور به کامپیوتر)
حالا در این بخش از آموزش انتقال فایل از طریق SCP، میخواهیم فایلی را از سرور راه دور به کامپیوتر خود دانلود کنیم. برای دانلود کافیست جای مبدأ و مقصد را در دستور عوض کنیم:
scp [نام کاربری]@[IP سرور]:[مسیر فایل روی سرور] [مسیر مقصد روی کامپیوتر]
مثال عملی:
فرض کنید میخواهیم همان فایل blog-list.xlsx را که در مرحلهی قبل آپلود کردیم، از سرور دانلود کرده و در همان پوشهی دسکتاپ (جایی که ترمینال را باز کردهایم) ذخیره کنیم.
دستور به این شکل خواهد بود:
scp ubuntu@87.236.166.113:/home/ubuntu/blog-list.xlsx .
تحلیل دستور:
- ubuntu@…:/home/ubuntu/blog-list.xlsx: آدرس کامل فایل مبدأ روی سرور.
- . (نقطه): این نقطه در انتهای دستور بسیار مهم است. نقطه در خط فرمان به معنای «همین پوشهی فعلی» (Current Directory) است؛ یعنی فایل را دقیقاً در همینجایی که هستیم (دسکتاپ) دانلود کن.
مانند قبل، پساز وارد کردن رمز عبور سرور، فرایند دانلود آغاز خواهد شد.
