# Перемещаем и переименовываем: mv

Курс: Claude Code и терминал: с 0 — https://zero2claude.ru/learn/code-terminal
Канонический URL: https://zero2claude.ru/learn/code-terminal/2-5-peremeshchaem-mv

Команда mv перемещает и переименовывает файлы. Почему это одно и то же действие в терминале.

Ты научился копировать файлы. Теперь освоим близкую, но более «строгую» команду — `mv`. Она тоже работает с файлами, но в отличие от `cp` **не оставляет дубликат**.

## mv — переместить или переименовать

У команды `mv` (от *move*) две роли сразу, и обе зависят от того, что ты укажешь во втором аргументе:

```
mv draft.txt архив/draft.txt   # переместить файл в другую папку
mv draft.txt final.txt         # переименовать файл в той же папке
```

Логика одна: «возьми файл слева и помести его туда, что справа». Если справа другая папка — файл переедет. Если справа просто новое имя — файл переименуется. Терминал понимает обе ситуации сам, отдельной команды «переименовать» здесь не существует.

## Чем отличается от cp

Это важно прочувствовать:

- `cp` делает **копию** — после неё файлов становится два.
- `mv` **перемещает** — файл остаётся один, просто меняет место или имя.

После `mv draft.txt final.txt` старого файла `draft.txt` больше нет — он стал `final.txt`. Это не потеря данных, а именно переименование: содержимое целиком переехало под новое имя.

## Попробуй

В папке лежит черновик `draft.txt`. Переименуй его в `final.txt`:

```
mv draft.txt final.txt
```

После этого `ls` покажет только `final.txt` — старого имени уже не будет, а содержимое сохранится.
