Рано или поздно вам придется перенести файл или переименовать его, если вы работаете в Linux. Команда «mv» существует именно для этих простых, но жизненно важных задач. Ее название происходит от английского слова «move», которое переводится как «перемещаться». Трудно представить повседневную работу в терминале без этой команды.
Вы можете представить себе ситуацию, когда вы просто перетащите документ на рабочем столе мышкой, чтобы перенести его в другую папку. С помощью текстовой команды команда «mv» мгновенно выполнит вашу команду, будь то переименование файла в его текущей папке или перемещение его в совершенно другую папку в системе.
Давайте разберемся, как пользоваться этим простым инструментом и какие тонкости стоит учитывать. «mv» достаточно гибкий, чтобы работать с одиночными файлами и перемещать несколько объектов или целые папки со всем содержимым.
В Linux команда «mv» — это простая и удобная программа для перемещения и переименования файлов и папок. Файл будет перемещен или получил новое имя, если вы укажете, откуда он берется и куда его положить. Она полезна как новичкам, так и опытным пользователям, потому что работает быстро и не требует сложных настроек. Очень важно быть осторожным: если переместить файл в уже существующее имя, он будет автоматически перезаписан.
Синтаксис
mv — одна из стандартных команд дистрибутивов, основанных на ядре Linux. О ней должен знать каждый пользователь, желающий изучить основные терминальные команды, чтобы через консоль выполнять любые необходимые действия. Эта утилита позволяет переименовать директории и отдельные объекты, а также перемещать их. Конечно, эти же действия можно осуществить и через графический интерфейс, но не всегда имеется к нему доступ или же требуется произвести поставленную задачу через «Терминал», не отвлекаясь на окружение рабочего стола. Задействовать команду mv в консоли очень просто, поскольку ее синтаксис не является сложным, а доступные опции можно выучить буквально за несколько минут, лишь взглянув на них. Однако мы все же обратим отдельное внимание на правила ввода и присутствующие аргументы, чтобы даже у начинающих пользователей больше не осталось вопросов по этой теме. Начать предлагаем с синтаксиса, а именно — с правил составления строки действия в консоли.
Как известно, в программировании синтаксис отвечает за правила ввода слов при составлении одного или нескольких запросов. Сегодня мы рассмотрим команду, которая зависит от последовательностей составления строки и того, выполнится ли требование пользователя правильно. Правильность написания выглядит так: mv + опции + исходные_файлы + место_назначения. Давайте более подробно рассмотрим каждый фрагмент, чтобы понять его роль:
- mv — соответственно, вызов самой утилиты. Всегда является началом строки, за исключением установки аргумента sudo, отвечающего за выполнение команды от имени суперпользователя. Тогда строка приобретает вид
sudo mv + опции + исходные_файлы + место_назначения. - опции — устанавливаемые дополнительные задачи, например, выполнение резервного копирования, перезапись файлов и другие действия, о которых мы поговорим в отдельном разделе сегодняшнего материала.
- исходные_файлы — те объекты или директории, с которыми вы хотите произвести действие, например, переименовать или переместить.
- место_назначения — указывается при перемещении объектов, а если будет осуществляться переименования, то указывается новое название.
Эти были все правила ввода, которые нужно запомнить. Никаких дополнительных особенностей нет, поэтому можно переходить к обсуждению доступных вариантов.
Опции
Как вы уже знаете, опции представляют собой дополнительные аргументы в виде букв, которые используются, когда команда должна выполнять дополнительные действия. Практически каждая существующая в Linux команда может использовать одну или несколько функций, в том числе mv. Его возможности направлены на выполнение следующих задач:
| Опции | Описание |
|---|---|
| —help | Выводит на экран официальную документацию об утилите. Пригодится, если вы забыли другие опции и желаете быстро получить общую сводку |
| —version | Отображает версию mv. Практически никогда не используется пользователями, поскольку определение версии данного инструмента практически никогда не требуется |
| -b или —backup или —backup=МЕТОД | Создает копию файлов, которые были перемещены или перезаписаны |
| -f | При активации не будет спрашивать разрешение у владельца файла, если речь идет о перемещении или переименовании файла |
| -i | Наоборот, будет спрашивать разрешение у владельца |
| -n | Отключает перезапись уже существующих объектов |
| —strip-trailing-slashes | Удаляет завершающий символ / у файла при его наличии |
| -t ДИРЕКТОРИЯ | Перемещает все файлы в указанную директорию |
| -u | Осуществляет перемещение только в том случае, если исходный файл новее объекта назначения |
| -v | Отображает сведения о каждом элементе во время обработки команды |
Чтобы указывать иx в одной строке во время переименования или перемещения отдельных объектов или директорий в будущем, вы можете использовать приведенные выше опции. Далее мы поговорим о самых распространенных примерах взаимодействия с командой mv, остановившись на всех основных действиях.
Перемещение файлов и папок
Из приведенной выше информации вы уже знаете, что рассматриваемая сегодня команда используется для перемещения файлов. Для этого потребуется запустить «Терминал» удобным способом и написать там mv myfile1.txt mydir/, заменив указанное имя файла и конечную папку на необходимые. Если объект находится не в текущей директории, следует прописать полный путь к нему, о чем мы еще поговорим далее. То же самое можно выполнить и с отдельной папкой.

Переименование объектов и директорий
Переименование объектов — второе предназначение консольной утилиты mv. Это также делается одной командой. Мы обещали ранее показать, как осуществляется операция, предоставив полный путь. В этом случае строка будет иметь вид mv /home/lumpics/Рабочий стол/test.txt test2.txt, при этом /home/lumpics/Рабочий стол/test.txt содержит необходимое расположение объекта с его именем и расширением, а test2.txt — имя, которое будет присвоено объекту после активации команды.

Например, если требуется выполнить несколько действий в одной сессии, лучше перейти к расположению и вписать команду cd, чтобы избежать необходимости указывать полный путь к объекту или каталогу.

После этого давайте переименуем папку через mv test1 test, где test1 — изначальное название, а test1 — конечное.

После нажатия клавиши Enter вы увидите новую строку ввода, что означает, что все изменения были выполнены успешно. Сейчас вы можете проверить новое имя каталога в файловом менеджере или любом другом программном обеспечении.

Создание резервных копий объектов
При ознакомлении с опциями команды можно было заметить аргумент -b. Именно он отвечает за создание резервных копий. Правильное оформление строки выглядит так: mv -b /test/test.txt test1.txt, где /test/test.txt — непосредственный путь к файлу, а test1.txt — название для его резервной копии.

По умолчанию объекты резервных копий в конце своего названия имеют символ ~, соответственно, команда mv тоже создает его автоматически. Если вы желаете изменить это, следует использовать строку mv -b -S ".txt" test.txt test1.txt при создании резервной копии. Здесь вместо «.txt» напишите оптимальное для вас расширение файла.
Перемещение нескольких файлов одновременно
Иногда возникает надобность переместить сразу несколько файлов. С этой задачей прекрасно справляется рассматриваемая сегодня утилита. В «Терминале» вам следует ввести лишь mv myfile1 myfile2 myfile3 mydir/, заменив названия объектов и конечную папку на необходимые.

Если кoманды из консоли сейчас активируются из той директории, где находятся все файлы, которые необходимо переместить, используйте mv * mydir/, чтобы сразу же перебросить все файлы в указанный каталог. Таким образом, не нужно тратить время на поочередное перемещение или ввод имен всех объектов.

То же самое относится к элементам с одинаковым форматом. Если есть желание переместить, например, только изображения типа JPG, следует изменить строку на mv *.jpg mydir. То же самое касается и всех других известных типов файлов.

Как вы можете видеть, команда mv — это превосходная рабочая лошадка в мире Linux. Она перемещает файлы и папки и одновременно переименовывает их, что является двумя важными операциями. Это удобно и экономит время, потому что не нужно обучать отдельным командам каждой из этих задач.
Главное: будьте осторожны, когда используете ключи вроде -i или -f. Эти ключи позволяют вам контролировать, что произойдет, если файл с таким именем уже существует, поэтому лучше перестраховаться, чем случайно затереть что-то важное.
Вы получите простой, но мощный инструмент для организации своих файлов, используя mv. Вы можете легко организовать свою домашнюю директорию, подготовить файлы для архивирования или просто изменить их названия с его помощью. Это одна из основных команд Linux, без которой трудно обойтись.








