Использование команды mv в Linux

Синтаксис

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 Отображает сведения о каждом элементе во время обработки команды

В будущем вы можете использовать приведенные выше опции, чтобы указывать их в одной строке во время переименования или перемещения отдельных объектов или директорий. Далее предлагаем более детально разобраться с самыми популярными примерами взаимодействия с командой mv, остановивших на всех основных действиях.

Перемещение файлов и папок

Из приведенной выше информации вы уже знаете, что рассматриваемая сегодня команда используется для перемещения файлов. Для этого потребуется запустить «Терминал» удобным способом и написать там mv myfile1.txt mydir/, заменив указанное имя файла и конечную папку на необходимые. Если объект находится не в текущей директории, следует прописать полный путь к нему, о чем мы еще поговорим далее. То же самое можно выполнить и с отдельной папкой.

Перемещение файла в указанную папку через команду mv в Linux

Переименование объектов и директорий

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

Переименование файла через утилиту mv в Linux

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

Переход указанному расположению для взаимодействия с утилитой mv в Linux

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

Переименование папки при помощи mv в Linux в текущей папке

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

Успешное применение команды mv в Linux в текущем расположении

Создание резервных копий объектов

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

Создание резервной копии существующего файла при помощи команды mv в Linux

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

Перемещение нескольких файлов одновременно

Иногда возникает надобность переместить сразу несколько файлов. С этой задачей прекрасно справляется рассматриваемая сегодня утилита. В «Терминале» вам следует ввести лишь mv myfile1 myfile2 myfile3 mydir/, заменив названия объектов и конечную папку на необходимые.

Одновременное перемещение нескольких файлов через утилиту mv в Linux

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

Перемещение всех файлов из текущей папки с помощью команды mv в Linux

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

Перемещение всех файлов с указанным расширением через команду mv в Linux

Перемещение отсутствующих в целевой директории файлов

Случаются ситуации, когда в определенную директорию нужно переместить ряд файлов, однако некоторые из них уже имеются в данном каталоге. Тогда требуется использовать опцию -n, чтобы в итоге команда обрела вид mv -n mydir1/* mydir2/. Здесь замените указанные папки на необходимые, чтобы перемещение прошло корректно.

Перемещение несуществующих в целевой директории файлов через mv в Linux

Как видите, команда mv может использоваться для разных целей и с определенными аргументами, которые позволяют без каких-либо проблем переименовать или переместить группу объектов либо какой-то конкретный файл. Если вас заинтересовало взаимодействие с другими стандартными консольными утилитами в Linux, советуем изучить материалы по данной теме, воспользовавшись приведенными ниже ссылкам.

Читайте также:
Часто используемые команды в «Терминале» Linux
Команда ln / find / ls / grep / PWD / PS / echo / touch / df в Linux

Автор статьи Виктор Бухтеев Вам помогли мои советы?
Получить ответ на Email
Уведомить о

1 Ответ
По рейтингу
Новые Старые
Межтекстовые Отзывы
Посмотреть все комментарии
Аноним
23 октября 2023 21:09

Спасибо!) Очень помогла!!) Всего доброго вам!!)

Рекомендуем: