## آموزش کپی فایلها و دایرکتوریها در لینوکس
(**Copy Files and Directories in Linux**)
برای کپی کردن فایلها و پوشهها (دایرکتوریها) در لینوکس، از دستور `cp` استفاده میکنیم. این دستور هم برای بکاپ گرفتن، هم برای انتقال فایلها به مسیرهای مختلف بدون حذف فایل اصلی استفاده میشه.
---
## 🟢 کپی کردن یک فایل ساده
```bash
cp file.txt backup.txt
```
این دستور فایل `file.txt` رو به نام جدید `backup.txt` کپی میکنه. فایل اصلی همچنان سر جاش باقی میمونه.
---
## 🟡 کپی فایل به یک مسیر دیگر
```bash
cp notes.txt /home/user/Documents/
```
این دستور، فایل `notes.txt` رو به پوشهی `Documents` منتقل میکنه (بدون حذف فایل اصلی).
---
## 🔵 کپی چند فایل به یک دایرکتوری
```bash
cp file1.txt file2.txt /home/user/Desktop/
```
هر دو فایل به دسکتاپ منتقل میشن.
---
## 🟣 کپی فایل به همراه تأیید (محافظتی)
```bash
cp -i file.txt /home/user/
```
گزینه `-i` باعث میشه اگر فایلی با همون نام در مقصد وجود داشته باشه، ازت تأیید بگیره:
```
overwrite 'file.txt'? (y/n)
```
---
## ⚪ کپی فایل بهصورت بازنویسی بدون اخطار
```bash
cp -f file.txt /path/
```
گزینه `-f` یعنی "force" → اگر فایلی با همون نام وجود داشته باشه، بدون سوال جایگزین میشه.
---
## 🟤 کپی فایل با حفظ ویژگیها (مجوزها، تاریخ و…)
```bash
cp -p file.txt /backup/
```
- `-p` = preserve
مفید برای بکاپ گرفتن دقیق.
---
## 🔴 کپی کردن یک دایرکتوری (پوشه)
```bash
cp -r myfolder /home/user/backup/
```
- `-r` = recursive (بازگشتی)
این دستور، پوشهی `myfolder` و تمام محتویات داخلش رو کپی میکنه.
---
## 🔶 ترکیب چند گزینه مفید:
```bash
cp -r -p -i myfolder /home/user/
```
- با این ترکیب:
- بهصورت بازگشتی کپی میشه
- ویژگیهای فایلها حفظ میشن
- در صورت تداخل ازت سوال میپرسه
---
## 🛑 کپی با نام جدید در مقصد
```bash
cp notes.txt /home/user/Documents/notes_backup.txt
```
فایل هم جابجا شده، هم نامش تغییر کرده.
---
## 🔐 کپی به مسیرهای سیستمی (با دسترسی ریشه)
```bash
sudo cp config.conf /etc/
```
---
## 📌 خلاصه دستورات
| دستور | کاربرد |
|--------|---------|
| `cp file1 file2` | کپی فایل با نام جدید |
| `cp file /dir/` | کپی فایل به مسیر دیگر |
| `cp -r folder /dir/` | کپی پوشه و محتوا |
| `cp -i file /dir/` | کپی با تأیید |
| `cp -p file /dir/` | کپی با حفظ ویژگیها |
| `sudo cp file /sys/` | کپی به مسیر سیستمی |
---
## ✅ نتیجهگیری
دستور `cp` بسیار ساده و قدرتمنده. فقط یادت باشه هنگام بازنویسی فایلها در مسیر مقصد مراقب باشی. استفاده از گزینههایی مثل `-i` و `-p` میتونه بهت کمک کنه که مطمئنتر کار کنی.