mv
mv — перемещает (переименовывает) файлы
ОБЗОР
mv [опции…] исходный_файл файл_назначения
mv [опции…] исходный_файл… каталог
Опции POSIX: [-fi] [—]
Опции GNU (краткая форма): [-bfiuv] [-S suffix] [-V {numbered,existing,simple}] [—help] [—version] [—]
ОПИСАНИЕ
mv перемещает или переименовывает файлы или каталоги.
Если последний аргумент является именем существующего каталога, то mv перемещает все остальные файлы в этот каталог. В противном случае, если задано только два файла, то имя первого файла будет изменено на имя второго. Если последний аргумент не является каталогом и задано более чем два файла, то будет выдано сообщение об ошибке.
Так, mv /a/x/y /b переименует файл /a/x/y в /b/y, если /b является существующим каталогом, и в /b, если нет.
Если при переименовании исходного_файла в файл_назначения, этот файл_назначения существует и при этом задана опция -i или если произвести запись в файл назначения невозможно, а стандартным выводом является терминал и не задана опция -f, то mv спрашивает у пользователя разрешение на замену этого файла, которое выдается на стандартный вывод ошибок, и читает ответ из стандартного ввода. Если ответ не утвердительный, то файл пропускается.
Когда и исходный_файл и файл_назначения находятся на одной файловой системе, они являются одним и тем же файлом (изменяется только имя файла; владелец, права доступа, временные штампы остаются неизменными). Если же они находятся на разных файловых системах, то исходный_файл копируется и затем удаляется. mv будет копировать время последней модификации, время доступа, идентификаторы пользователя и группы и права доступа к файлу если это возможно. Если копирование идентификаторов пользователя и/или группы закончилось неудачно, то в копии файла сбрасываются биты setuid и setgid.
ОПЦИИ POSIX
- -f
- Не выдавать запрос на подтверждение операции.
- -i
- Выдавать запрос на подтверждение операции, когда файл_назначения существует. (В случае, когда заданы обе опции -f и -i, срабатывает только последняя).
- —
- Завершает список опций.
ДЕТАЛИ ВЕРСИИ GNU
Реализация GNU mv (в fileutils-3.16) работает неправильно, так как там mv может переносить между файловыми системами только обычные файлы.
ОПЦИИ GNU
- -f, —force
- Удаляет файлы_назначения, если они существуют, не спрашивая об этом пользователя.
- -i, —interactive
- Просит подтверждения на замену существующего файла, в виде вопроса, которые выводится на стандартный вывод ошибок и читает ответ из стандартного ввода. Если ответ не утвердительный, то файл пропускается.
- -u, —update
- Не переносит не-каталоги, которые уже существуют в месте, куда осуществляется перенос и имеют то же самое или более позднее время модификации.
- -v, —verbose
- Выдавать имя каждого файла перед его переносом.
ОПЦИИ РЕЗЕРВНОГО КОПИРОВАНИЯ GNU
GNU-версии таких программ как cp, mv, ln, install и patch могут, если потребуется, делать резервные копии файлов, которые будут перезаписаны, изменены или уничтожены. При желании, резервные копии файлов создаются с помощью опции -b. Как они будут называться, задает опция -V. В случае, если имя файла резервной копии создаётся с помощью добавления суффикса к имени исходного файла, то суффикс указывается с помощью опции -S.
- -b, —backup
- Делать резервные копии файлов, которые будут перезаписаны или удалены.
- -S СУФФИКС, —suffix=СУФФИКС
- Добавить СУФФИКСк имени файла при создании его резервной копии.Если данная опция не задана, то суффикс можно также задать, используя переменную окружения SIMPLE_BACKUP_SUFFIX Если не задана ни опция, ни переменная, то по умолчанию используется суффикс ~.
- -V МЕТОД, —version-control=МЕТОД
-
- Определяет, как будут называться резервные копии файлов. Аргумент МЕТОД может принимать значения numbered (или t), existing (или nil) и never (или simple). Если данная опция не задана, то будет использовано значение переменной окружения VERSION_CONTROL. Если же не задано значение и этой переменной, то по умолчанию тип резервного копирования устанавливается в existing.Данная опция соответствует переменной version-control в Emacs. Допустимыми значениями МЕТОД являются (допускаются однозначные сокращения):
- t, numbered
- Всегда делать нумерованные резервные копии файлов.
- nil, existing
- Делать нумерованные резервные копии файлов для файлов, которые уже их имеют и простые резервные копии для остальных файлов.
- never, simple
- Всегда делать простые резервные копии.
- Определяет, как будут называться резервные копии файлов. Аргумент МЕТОД может принимать значения numbered (или t), existing (или nil) и never (или simple). Если данная опция не задана, то будет использовано значение переменной окружения VERSION_CONTROL. Если же не задано значение и этой переменной, то по умолчанию тип резервного копирования устанавливается в existing.Данная опция соответствует переменной version-control в Emacs. Допустимыми значениями МЕТОД являются (допускаются однозначные сокращения):
СТАНДАРТНЫЕ ОПЦИИ GNU
- —help
- Выдать подсказку на стандартный вывод и успешно завершиться.
- —version
- Выдать информацию о версии на стандартный вывод и успешно завершиться.
- —
- Служит для обозначения конца списка опций.
ОКРУЖЕНИЕ
При работе обычным образом используются значения переменных LANG, LC_ALL, LC_COLLATE, LC_CTYPE и LC_MESSAGES. В версии GNU используются также переменные SIMPLE_BACKUP_SUFFIX и VERSION_CONTROL, как описано выше.
СОВМЕСТИМОСТЬ
Соответствует POSIX 1003.2, за исключением того, что иерархии каталогов не могут быть перемещены в другую файловую систему.
ЗАМЕЧАНИЯ
Эта страница описывает версию mv пакета fileutils-4.0; другие версии могут иметь небольшие отличия. Исправления и дополнения присылайте по адресу aeb@cwi.nl. Сообщения об ошибках в этой программе присылайте по адресу fileutils-bugs@gnu.ai.mit.edu.
ПЕРЕВОД
Перевёл с английского Виктор Вислобоков <corochoone@perm.ru> 2003