Введение
В этом лабораторном занятии вы научитесь использовать команду mcopy, которая представляет собой инструмент для копирования файлов и каталогов между различными файловыми системами, включая FAT, NTFS и файловые системы Linux. В рамках лабораторной работы рассматриваются следующие аспекты: понимание команды mcopy, копирование файлов и каталогов с использованием mcopy и изучение расширенных параметров команды mcopy. Чтобы использовать mcopy, вам необходимо установить пакет mtools на своей системе. Также в лабораторной работе отмечается, что пакет mtools может потребовать установки, так как это набор утилит для доступа к файловым системам MS-DOS с систем на основе Unix.
Понимание команды mcopy
На этом этапе вы узнаете о команде mcopy, которая представляет собой инструмент для копирования файлов и каталогов между различными файловыми системами, включая FAT, NTFS и файловые системы Linux.
Команда mcopy является частью пакета mtools, который представляет собой набор утилит для доступа к файловым системам MS-DOS с систем на основе Unix. Чтобы использовать mcopy, вам необходимо установить пакет mtools на своей системе.
Начнем с проверки, установлен ли пакет mtools на вашей системе:
sudo apt-get update
sudo apt-get install -y mtools
Пример вывода:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
libfuse2
The following NEW packages will be installed:
libfuse2 mtools
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Теперь давайте рассмотрим базовое использование команды mcopy:
mcopy -v ~/project/file.txt a:
Пример вывода:
Copying ~/project/file.txt to a:file.txt
В этом примере мы использовали команду mcopy для копирования файла file.txt из каталога ~/project в корневой каталог первой файловой системы FAT/VFAT (обычно это первый дискета или USB-накопитель).
Опция -v включает подробный режим, который предоставляет более детальный вывод во время операции копирования.
a: в конце команды указывает назначение для операции копирования. В данном случае a: представляет первую файловую систему FAT/VFAT.
Копирование файлов и каталогов с использованием mcopy
На этом этапе вы научитесь использовать команду mcopy для копирования файлов и каталогов между различными файловыми системами.
Начнем с создания каталога и нескольких файлов в каталоге ~/project:
mkdir ~/project/source_dir
touch ~/project/source_dir/file1.txt ~/project/source_dir/file2.txt
Теперь скопируем весь каталог source_dir на устройство a::
mcopy -s ~/project/source_dir a:
Пример вывода:
Copying ~/project/source_dir/file1.txt to a:file1.txt
Copying ~/project/source_dir/file2.txt to a:file2.txt
В этом примере мы использовали опцию -s для рекурсивного копирования всего каталога. Команда mcopy скопирует каждый файл внутри каталога source_dir в корневой каталог устройства a:.
Вы также можете скопировать отдельный файл с помощью команды mcopy:
mcopy ~/project/source_dir/file1.txt a:
Пример вывода:
Copying ~/project/source_dir/file1.txt to a:file1.txt
В этом случае только файл file1.txt будет скопирован в корневой каталог устройства a:.
Исследование расширенных параметров mcopy
На этом последнем этапе вы узнаете о некоторых расширенных параметрах, доступных для команды mcopy.
Одним полезным параметром является флаг -a, который сохраняет исходные атрибуты файла при его копировании. Это может быть полезно при работе с файлами, имеющими определенные разрешения или временные метки:
mcopy -a ~/project/source_dir/file1.txt a:
Пример вывода:
Copying ~/project/source_dir/file1.txt to a:file1.txt
Другой параметр - это флаг -M, который позволяет установить время модификации скопированного файла таким же, как у исходного:
mcopy -M ~/project/source_dir/file2.txt a:
Пример вывода:
Copying ~/project/source_dir/file2.txt to a:file2.txt
Вы также можете использовать параметр -D для указания целевого каталога при копировании файлов:
mcopy -D destination_dir ~/project/source_dir/file1.txt a:
Пример вывода:
Copying ~/project/source_dir/file1.txt to a:destination_dir/file1.txt
В этом примере файл file1.txt копируется в каталог destination_dir на устройстве a:.
Наконец, команда mcopy также поддерживает подстановочные знаки, что позволяет копировать несколько файлов сразу:
mcopy ~/project/source_dir/*.txt a:
Пример вывода:
Copying ~/project/source_dir/file1.txt to a:file1.txt
Copying ~/project/source_dir/file2.txt to a:file2.txt
Эта команда скопирует все файлы с расширением .txt из каталога source_dir в корень устройства a:.
Итог
В этом лабораторном занятии вы познакомились с командой mcopy, которая представляет собой инструмент для копирования файлов и каталогов между различными файловыми системами, включая FAT, NTFS и файловые системы Linux. Вы начали с проверки, установлен ли пакет mtools, в который входит команда mcopy, на вашей системе, а затем изучили базовое использование команды mcopy для копирования файла из локальной файловой системы в файловую систему FAT/VFAT. Затем вы узнали, как использовать команду mcopy для копирования всего каталога и его содержимого в файловую систему FAT/VFAT.



