Команды Linux

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

Освоение команды копирования файла в Linux с примерами
В любой операционной системе копирование файлов и каталогов - одно из наиболее частых действий пользователя. В командной строке Linux вы можете узнать, как правильно использовать команду cp для настройки и управления копированием файлов в соответствии с вашими потребностями. В этой статье мы объясним использование команды Linux cp, представив несколько полезных примеров.

Мы запускали команды и примеры, упомянутые в этой статье, в системе Debian 10 Buster, но вы можете реплицировать их почти во всех дистрибутивах Linux.

Командная строка Linux, Терминал, легко доступна через Приложение.  Поиск в лаунчере выглядит следующим образом:

Пример 1: Копирование одного файла в целевой каталог

Самое простое использование команды cp - скопировать единственный исходный файл в целевой каталог. Вот синтаксис, который вы можете использовать для этого:

$ cp исходный файл / цель / каталог

Пример:

В этом примере я копирую файл с именем sample_file.txt в папку "Мои документы":

Позже я проверил наличие файла в целевой папке с помощью команды ls.

Пример 2: Копирование нескольких файлов в целевой каталог

С помощью команды cp вы можете скопировать несколько файлов в целевой каталог, используя следующий синтаксис:

$ cp исходный файл1 исходный файл2 исходный файл3… / цель / каталог

Пример:

В этом примере я копирую два образца файлов в папку «Документы» с помощью команды cp:

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

Пример 3: Копирование файлов в интерактивном режиме

Если файл с таким же именем существует в вашей целевой папке, вы можете использовать команду cp, чтобы запросить вас перед перезаписью целевого файла. Вы можете использовать ключ -i следующим образом:

$ cp -i исходный файл / цель / каталог

Пример:

В этом примере файл с именем sample_file.txt уже существует в моей папке Documents, поэтому команда cp с флагом -i запрашивает меня, хочу ли я перезаписать его. Файл будет перезаписан, если я введу y в этом запросе.

Пример 4: Копирование файлов вместе с подробным выводом

Подробный вывод показывает, что делает команда. Это можно включить в команду cp с помощью ключа -v следующим образом:

$ cp -v исходный файл / цель / каталог

Пример:

В следующем примере вы можете увидеть, как команда cp выводит подробный вывод при копировании команды:

Пример 5: рекурсивное копирование каталога

Использование параметра -r с командой cp рекурсивно копирует все файлы и папки в каталоге в другое место. Вот как вы можете использовать команду cp в этом сценарии:

$ cp -r каталог1 каталог2

Пример:

В следующем примере вся папка 1 со всеми ее файлами будет скопирована в папку 2.

Позже я проверил содержимое папки folder2 с помощью команды ls. Папка2 теперь содержит копию исходной папки.

Пример 6: Рекурсивное копирование каталога с сохранением архива

Используя переключатель -a с командой cp, вы можете делать две вещи одновременно:

Вот как вы можете использовать команду cp в этом сценарии:

$ cp -a каталог1 каталог2

Пример:

В следующем примере вся папка 1 со всеми ее файлами будет скопирована в папку 2. Кроме того, файлы будут заархивированы как проверенные позже с помощью 'ls -l command'.

Пример 7: Скопируйте файл, если он новее, чем целевой файл

Иногда вы хотите скопировать файл в целевой каталог, только если он новее, чем целевой файл. Это можно сделать с помощью ключа -u с командой cp:

$ cp -u исходный файлИЛИsourcedirectory / target / directory

Пример:

В этом примере я редактировал файл sample_file.txt из моей исходной папки. Эти файлы уже были скопированы в целевую папку до того, как я отредактировал файл. Это можно увидеть в следующем выводе команды ls -l:

Теперь, когда я скопировал исходную папку в целевую папку, подробный вывод подтвердил, что будет скопирован только тот файл, который был отредактирован мной.

Пример 8: Скопируйте файл, но не перезаписывайте его, если целевой файл уже существует

Вы можете указать команде cp не перезаписывать файл, если он уже существует в целевом местоположении. Это можно сделать с помощью ключа -n следующим образом:

$ cp -n исходный файл / цель / каталог

Пример:

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

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

Пример 9: Создайте символическую ссылку на файл в целевом каталоге

С помощью переключателя -s в команде cp вы можете создать символическую ссылку на исходный файл в целевой папке вместо копирования исходного файла.

$ cp -s исходный файл / цель / каталог

Пример:

В следующем примере я создал символическую ссылку на файл sample_file.txt в целевой папке.

Позже я проверил наличие символической ссылки в целевой папке с помощью команды ls -l.

Пример 10: Создание жесткой ссылки на файл в целевом каталоге

Когда вы создаете жесткую ссылку на файл в другой папке, файл не копируется в целевую папку; вместо этого создается жесткая ссылка на исходный файл. Номер inode исходного файла и скопированной жесткой ссылки одинаков. Вот как создать жесткую ссылку:

$ cp -l исходный файл / цель / каталог

Пример:

В этом примере я создал жесткую ссылку на исходный файл в папке Documents.

С помощью команды ls -il я убедился, что и исходный файл, и жесткая ссылка имеют одинаковые номера inode.

Это все, что вам нужно было знать, чтобы освоить команду cp в Linux. Используя комбинацию этих переключателей, вы можете сделать копирование файлов более настраиваемым.

Как разработать игру в Linux
Десять лет назад не многие пользователи Linux могли бы предсказать, что их любимая операционная система однажды станет популярной игровой платформой д...
Порты коммерческих игровых движков с открытым исходным кодом
Бесплатные игры с открытым исходным кодом и кроссплатформенные версии игрового движка можно использовать для игры как в старые, так и в некоторые из с...
Лучшие игры с командной строкой для Linux
Командная строка - не только ваш главный союзник при использовании Linux - она ​​также может быть источником развлечений, потому что вы можете использ...