mv (Перемещение)
100%

Командная строка · Урок 11

mv (Перемещение)

Научитесь переименовывать и перемещать файлы и каталоги, избегая нежелательной перезаписи.

Команда mv переименовывает файл или каталог либо перемещает его. В отличие от cp, после успешной операции исходный путь не остаётся на месте.

Базовый синтаксис:

mv [OPTIONS] SOURCE DESTINATION

Переименование файлов и каталогов

Сначала укажите текущий путь, затем новый.

Переименование файла:

$ mv oldfile newfile

В том же порядке переименовывается каталог:

$ mv old_directory_name new_directory_name

Какая команда переименовывает cat в dog в текущем каталоге?

Перемещение в каталог

Если последний аргумент — существующий каталог, mv помещает источник внутрь:

$ mv file2 /home/pete/Documents

Для нескольких источников перечислите их, а целевой каталог поставьте последним:

$ mv file_1 file_2 somedirectory/

GNU mv также поддерживает -t, чтобы указать целевой каталог раньше источников:

$ mv -t somedirectory/ file_1 file_2

В отличие от cp, для каталога mv не нужен рекурсивный параметр.

Какая команда перемещает file_1 и file_2 в существующий archive/?

Управление существующим назначением

По умолчанию mv может заменить существующее назначение. Проверьте пути и при необходимости выберите политику:

  • -i: спросить перед заменой.

    $ mv -i source_file destination_directory
    
  • -n: не перезаписывать существующее назначение.

    $ mv -n source_file destination_directory
    
  • -b: в GNU/Linux создать резервную копию заменяемого назначения, обычно с суффиксом ~.

    $ mv -b file1 directory_with_file1
    
  • -v: показывать каждое перемещение.

$ mv -v file1 file2 somedirectory/

Какая команда перемещает draft.txt в finished/ только если не произойдёт перезапись?

Перемещение каталогов и совпадений шаблона

Каталог перемещается без -r:

$ mv project /home/pete/Documents/

Шаблоны оболочки выбирают несколько источников:

$ ls *.txt
$ mv *.txt notes/

Предварительный ls помогает заметить слишком широкий шаблон до изменения путей.

Какая команда перемещает каталог project/ в /srv/archive/?

Перед mv *.txt notes/ какая команда показывает пути, выбранные тем же шаблоном?

Урок завершён

Вы завершили mv (Перемещение)

Теперь вы умеете переименовывать и перемещать пути, защищая существующие назначения.

  • Ставить источник перед новым путём.

  • Размещать целевой каталог после нескольких источников.

  • Спрашивать, пропускать или создавать резервную копию перед заменой.

  • Перемещать каталоги без рекурсивного параметра.

  • Проверять совпадения шаблона перед массовой операцией.

Сохраните прогресс

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

Создать бесплатный аккаунт
Следующий Урок
Назад к Командная строка