Команда mv, сокращение от "move" (переместить), является фундаментальной утилитой в любой среде Linux. Она служит двум основным целям: переименование файлов или каталогов и их перемещение в другое местоположение. Ее функциональность во многом схожа с командой cp.
Переименование файлов и каталогов
Одним из наиболее распространенных применений команды mv в linux является переименование. Синтаксис прост: вы указываете старое имя и новое имя.
Для переименования файла:
mv oldfile newfile
Эта же логика применяется и к переименованию каталогов:
mv old_directory_name new_directory_name
Перемещение файлов и каталогов
Другая основная функция команды mv — перемещение элементов из одного места в другое.
Чтобы переместить один файл в другой каталог:
mv file2 /home/pete/Documents
Вы также можете переместить несколько файлов одновременно. Просто перечислите все исходные файлы, а затем целевой каталог:
mv file_1 file_2 /somedirectory
Полезной опцией для этого является linux mv -t, которая позволяет указать целевой каталог первым. Это может быть более наглядно при перемещении большого количества файлов.
mv -t /somedirectory file_1 file_2
В отличие от команды cp, вам не нужен флаг -r для перемещения каталога. Команда bash mv обрабатывает каталоги по умолчанию. Хотя некоторые пользователи ищут mv -r linux, эта опция не требуется для перемещения каталогов с помощью mv.
Важные опции для команды mv
По умолчанию, если вы перемещаете файл в место назначения, где уже существует файл с таким же именем, mv перезапишет его без предупреждения. Чтобы предотвратить случайную потерю данных, вы можете использовать следующие опции:
-
-i (interactive/интерактивный): Это важнейшая функция безопасности. Она запросит у вас подтверждение перед перезаписью существующего файла.
mv -i source_file destination_directory -
-b (backup/резервная копия): Если вы намерены перезаписать файл, но хотите сохранить старую версию, эта опция создает резервную копию целевого файла. Резервной копии обычно присваивается суффикс тильды (
~).mv -b file1 directory_with_file1 -
-v (verbose/подробный): Эта опция заставляет команду
mvвыводить информацию о своих действиях, показывая каждый перемещаемый или переименовываемый файл.mv -v file1 file2 /somedirectory
Освоение команды mv имеет решающее значение для эффективного управления файлами в командной строке.