Linux перенос файлов другую папку

Содержание
  1. Копирование, перемещение, переименование и удаление файлов и каталогов в Linux
  2. Основные команды для работы с файловой системой Linux
  3. Перемещение по дереву файловой системы
  4. Действия с файлами и каталогами
  5. Копирование
  6. Перемещение и переименование файлов
  7. Удаление
  8. Команда mv
  9. Описание команды mv
  10. Синтаксис
  11. Опции
  12. Примеры использования команды mv
  13. Переместить файл
  14. Переименовать файл
  15. Переименовать директорию
  16. Создавать резервные копии существующих файлов
  17. Переместить несколько файлов
  18. Переместить только те файлы, которых нет в директории назначения
  19. Переместить только те файлы, которые новее
  20. Если в имени файла есть пробелы
  21. Использование команды mv в Linux
  22. Синтаксис
  23. Опции
  24. Перемещение файлов и папок
  25. Переименование объектов и директорий
  26. Создание резервных копий объектов
  27. Перемещение нескольких файлов одновременно
  28. Перемещение отсутствующих в целевой директории файлов

Копирование, перемещение, переименование и удаление файлов и каталогов в Linux

Деятельность системного администратора Linux-систем неразрывно связана с работой в файловой системе. Т. е. с копированием, удалением, перемещением или переименованием файлов и каталогов. Естественно, все эти действия выполняются в командной строке. Поскольку для сервера использование графических оболочек является неоправданной тратой системных ресурсов. Серверная машина должна предоставлять только исчерпывающий инструментарий для выполнения возлагаемых на неё задач. Поэтому использование командной оболочки на сервере — необходимое и достаточное условие для выполнение задач по администрированию. Какой бы «недружелюбной» и на первый взгляд «неудобной» была системная консоль, но выполнение в ней таких элементарных действий как работа с файлами и каталогами определяет основу системного администрирования.

Основные команды для работы с файловой системой Linux

Существует всего несколько команд, которые позволяют гибко управлять файловой системой. На этих командах основаны все файловые менеджеры из комплектов всевозможных графических оболочек для Linux- и UNIX-систем. Набор этих команд включает:

  • cd – перемещение по дереву каталогов файловой системы. В качестве параметра указывается пункт назначения — какой-либо каталог по относительному или абсолютному пути;
  • ls – просмотр содержимого каталога. По-умолчанию выводит содержимое текущего (активного) каталога, если целевой каталог не задан явно через параметр;
  • cp – копирование файлов и каталогов. Первым параметром является источник, вторым — конечный объект-копия;
  • rm – удаление файлов. Может использоваться и для удаления каталогов;
  • rmdir – удаление каталогов;
  • mv – перемещение или переименование файлов или каталогов. В качестве параметров указываются сначала источник, затем конечный объект. Для переименования абсолютные (или относительные) пути для источника и целевого объекта должны совпадать;
  • pwd – определение текущего (активного) каталога.

Итого команд меньше десятка, однако это внушительный арсенал.

Перемещение по дереву файловой системы

Чтобы попасть в нужное место файловой системы, например в каталог, в котором хранятся файлы настроек виртуальных хостов Apache, нужно дать команду (для Ubuntu, например):

Теперь команда pwd выведет этот путь, конечный каталог которого (sites-available) стал активным:

Далее, командой ls можно просмотреть содержимое этого каталога и узнать, какие виртуальные хосты доступны веб-серверу:

Или, что, то же самое:

С помощью команды ls можно также просматривать и скрытые файлы и каталоги (имена которых начинаются с символа точки), а также режимы доступа к ним, добавив ключи -a и -l. Нужно заметить, что в случае использования опции -a также будут показаны псевдокаталоги с именами «.» и «. .», обозначающие текущий и каталог уровнем выше соответственно. Например, если требуется запустить какой-либо исполняемый файл (скрипт или программу) в текущем каталоге, то следует дать следующую команду:

Для перехода в каталог, уровнем выше:

Перейти на два уровня выше:

Перейти в каталог somedir1, который находится в каталоге уровнем выше:

» используется для обозначения домашнего каталога текущего пользователя, например следующая команда:

переведёт пользователя в каталог с сайтом на CMS Drupal (к примеру…), находящуюся в директории htdocs его домашнего каталога. Если в имени файла или директории присутствуют символы пробела, то в этом случае необходимо такие фрагменты заключать в двойные кавычки:

Действия с файлами и каталогами

Некоторые команды для их полноценного использования должны выполняться с применением дополнительных ключей и механизмов. Например, команда rmdir не сможет удалить директорию, если она не пуста. Для использования команды cp в некоторых случаях необходимо, чтобы каталог источника был активным каталогом. Для обработки нескольких файлов или каталогов можно применять маску для их выборки, а также рекурсию с помощью опции -R.

Копирование

Когда, к примеру, нужно создать конфигурацию нового виртуального хоста, то в этом случае проще всего воспользоваться копией существующей конфигурации по-умолчанию:

Читайте также:  Windows 10 не могу найти брандмауэр

Теперь можно вносить специфические для нового виртуального хоста настройки в файле drupal8-devtest.conf.

Для того, чтобы скопировать все файлы в какой-либо директории, очень желательно директорию-источник сделать активной, т. е. предварительно перейти в неё:

В результате все файлы (со всеми поддиректориями и их содержимым) из директории /etc/skel/ скопируются в домашний каталог текущего пользователя. Ключ -R позволяет выполнять копирование рекурсивно, т. е. и для всех поддиректорий, ключ -p указывает команде cp сохранять информацию о владельце и режимах доступа к файлам. По-умолчанию команда cp при копировании перезаписывает уже существующие файлы. Для того, чтобы заставить cp каждый раз запрашивать разрешение на перезапись нужно добавлять ключ -i (интерактивный режим). Можно также указать cp никогда не перезаписывать файлы — для этого служит ключ -n. Символ точки «.» указывает обрабатывать все файлы в текущем каталоге.

Когда нужно скопировать определённые файлы, например, начинающиеся на «drupal» или с определённым расширением, можно воспользоваться заданием маски с помощью символа звёздочки «*»:

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

Перемещение отличается от переименования тем, что при перемещении у источника и приёмника обязательно должны отличаться пути (абсолютный и/или относительный). При переименовании различаться может только имя файла/директории. Следующая команда:

просто переименует файл drupal8-devtest.conf на drupal8-devtest_back.conf.

перенесёт тот же файл в директорию backup домашнего каталога текущего пользователя. И даст ему новое имя drupal8-devtest_back.conf.

Для переименования каталога, как и в случае с командой cp часто необходимо директорию, в которой происходит переименование или из которой осуществляется перемещение, нужно сделать активной:

Перемещение файла (или каталога со всем его содержимым) в другое место нужно дать команду:

Для команды mv можно также применять маску для отбора только конкретных файлов/каталогов:

Удаление

Команда rm – одна из самых опасных. При неосмотрительном и невнимательном её использовании можно удалить целую файловую систему, которую придётся потом восстанавливать. Для удаления какого-либо файла нужно выполнить следующую команду:

Очень рекомендуется использовать опцию -i:

Данная команда кроме всех файлов и каталогов в директории downloads удалит также (по-умолчанию) и сам этот каталог. Поэтом крайне важно контролировать её действия с помощью опции -i. Также для команды rm можно использовать задание масок с помощью символа звёздочки.

Для ознакомления со всеми доступными для каждой из команд опциями следует использовать ключ —help для вывода краткой справки.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Команда mv

Описание команды mv

Команда mv используется для перемещения одного или нескольких файлов (или директорий) в другую директорию, а также для переименования файлов и директорий.

Синтаксис

исходные_файлы — это то, что мы будем перемещать или переименовывать. То есть это либо один файл, либо несколько файлов, либо директория, либо несколько директорий.

куда — это название директории, в которую мы перемещаем исходные файлы или директории. Или же это новое название файла или директории, если выполняется переименование. То есть это либо директория, либо новое название файла или директории.

Команда mv может:

  • Переместить один или несколько файлов в другую директорию.
  • Переместить одну или несколько директорий в другую директорию.
  • Переименовать файл.
  • Переименовать директорию.

Опции

  • none или off — не делать резервных копий, даже если включена опция —backup
  • numbered или t — имя резервной копии получит числовой индекс (пример: myfile.txt

).

  • existing или nil — если в директории уже есть резервные копии с числовыми индексами, то использовать числовые индексы для новых резервных копий, во всех остальных случаях использовать метод simple .
  • simple или never — делать обычные резервные копии (пример: myfile.txt

    Примеры использования команды mv

    Рассмотрим несколько примеров использования команды mv в Linux.

    Рекомендуется всегда использовать опцию -v , чтобы получать информацию о том, что именно команда mv делает с файлами.

    Также крайне рекомендуется использовать опцию -i , чтобы выдавался запрос на перезапись существующих файлов. В примерах ниже мы эти опции опускаем.

    Переместить файл

    Переместим файл myfile1.txt в директорию mydir/ (директория должна существовать). Для этого выполняем команду без каких-либо аргументов:

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

    Переименуем файл myfile1.txt в myfile2.txt :

    Переименовать директорию

    Переименуем директорию mydir1 в mydir2 . Выполняется точно также, как и переименование файлов.

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

    Предположим, что нам нужно переименовать файл myfile1.txt в myfile2.txt , но файл myfile2.txt уже существует. Можно воспользоваться опцией -b , чтобы создать резервную копию существующего файла:

    В результате сначала существующий файл myfile2.txt будет переименован в myfile2.txt

    , то есть будет создана его резервная копия, и только потом файл myfile1.txt будет переименован в myfile2.txt .

    Вместо значка тильда

    можно добавлять к именам резервных копий произвольный суффикс. Например, добавим суффикс .bak . Для этого воспользуемся опцией -S

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

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

    Переместим сразу три файла в директорию mydir/

    Переместим все файлы из текущей директории в директорию mydir/

    Переместим все файлы с расширением .jpg в директорию mydir/

    Переместить только те файлы, которых нет в директории назначения

    Предположим, что нам нужно переместить все файлы из одной директории в другую, но если в директории назначения уже есть файлы с такими же именами, то их не перемещать. Для этого используем опцию -n

    Переместить только те файлы, которые новее

    Предположим, что нам нужно переместить все файлы из одной директории в другую, но если в другой директории уже есть файлы с такими же именами, то заменять существующие файлы только если исходный файл новее (по дате). Для этого используем опцию -u

    Если в имени файла есть пробелы

    Если в имени файла есть пробелы, то имя файла нужно заключить в кавычки или перед каждым пробелом добавлять символ \

    Предположим, что нам нужно переименовать файл в имени которого содержится пробел — My file1.txt . Для этого можно заключить имя файла в кавычки (для файла назначения аналогично).

    Или использовать символ косой черты перед пробелом.

    Источник

    Использование команды 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 — переименование объектов. Производится это тоже через одну команду. Выше мы пообещали показать, как именно осуществляется операция с указанием полного пути. В таком случае строка обретает вид 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, советуем изучить материалы по данной теме, воспользовавшись приведенными ниже ссылкам.

    Помимо этой статьи, на сайте еще 12315 инструкций.
    Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник

    Читайте также:  Какие есть сборки linux
  • Оцените статью