Содержание:
Синтаксис
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 — переименование объектов. Производится это тоже через одну команду. Выше мы пообещали показать, как именно осуществляется операция с указанием полного пути. В таком случае строка обретает вид 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/
, заменив названия объектов и конечную папку на необходимые.
Если команды из консоли сейчас активируются из той директории, где располагаются все файлы для перемещения, используйте mv * mydir/
, чтобы сразу же перебросить их все в указанный каталог. Так вы сэкономите значительное количество времени на поочередном перемещении или ручном вводе имен всех объектов.
То же самое относится к элементам с одинаковым форматом. Если есть желание переместить, например, только изображения типа JPG, следует изменить строку на mv *.jpg mydir
. То же самое касается и всех других известных типов файлов.
Перемещение отсутствующих в целевой директории файлов
Случаются ситуации, когда в определенную директорию нужно переместить ряд файлов, однако некоторые из них уже имеются в данном каталоге. Тогда требуется использовать опцию -n, чтобы в итоге команда обрела вид mv -n mydir1/* mydir2/
. Здесь замените указанные папки на необходимые, чтобы перемещение прошло корректно.
Как видите, команда mv может использоваться для разных целей и с определенными аргументами, которые позволяют без каких-либо проблем переименовать или переместить группу объектов либо какой-то конкретный файл. Если вас заинтересовало взаимодействие с другими стандартными консольными утилитами в Linux, советуем изучить материалы по данной теме, воспользовавшись приведенными ниже ссылкам.
Читайте также:
Часто используемые команды в «Терминале» Linux
Команда ln / find / ls / grep / PWD / PS / echo / touch / df в Linux
Спасибо!) Очень помогла!!) Всего доброго вам!!)