Как копировать в ubuntu
Перейти к содержимому

Как копировать в ubuntu

  • автор:

13 Горячих клавиш, которые должен знать каждый пользователь Ubuntu 18.10

Рассмотрим некоторые полезные сочетания клавиш для Ubuntu 18.10 с графическим окружением GNOME. Мы не включили в эту статью универсальные сочетания клавиш, такие как Ctrl + C (копировать), Ctrl + V (вставить) или Ctrl + S (сохранить).

Примечание: Горячие клавиши, упомянутые в нашей статье, предназначены для Ubuntu 18.10 с графическим окружением GNOME. Большинство из них (если не все) должны работать и в других версиях Ubuntu и дистрибутивах Linux, а также с другими графическими окружениями. Однако, возможны и исключения.

Список горячих клавиш Ubuntu

Примечание: Super key (суперключ) в Linux — это та кнопка, которая обычно идет с логотипом Windows на клавиатуре . Комбинации клавиш в статье мы записываем через заглавные буквы, однако это не значит, что вам нужно зажимать клавишу Shift. То есть, “Т” эквивалентна клавише «t».

1. Возможности клавиши Super key

Вы хотите запустить какое-то приложение, но не знаете где его найти? Нажмите на клавиатуре клавишу Super key (клавиша с изображением Windows) и введите название нужного приложения в поле для поиска.

Если приложение установлено в Ubuntu, то вы увидите ярлык искомого приложения. Если это приложение не установлено, то система предложит вам установить его из центра программного обеспечения Ubuntu (если оно там есть).

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

Но и это еще не все! Нажав клавишу Super key, вы также получите доступ к активным рабочим столам в сайдбаре справа:

2. Ctrl+Alt+T: Запуск терминала

Вам часто приходится открывать терминал в Ubuntu? Комбинация трех клавиш Ctrl + Alt + T — это как раз то, что нужно для быстрого открытия терминала.

3. Super+L или Ctrl+Alt+L: Блокировка экрана

Самая простая и эффективная рекомендация по безопасности, при работе с Ubuntu, заключается в том, что, отходя от компьютера, не забывайте блокировать экран. Вместо того, чтобы тратить время и в верхнем правом углу выбирать опцию блокировки экрана, вы можете просто использовать комбинацию клавиш Super + L.

Для блокировки экрана некоторые системы также используют клавиши Ctrl + Alt + L.

4. Super + D или Ctrl + Alt + D: Показать рабочий стол

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

Повторно нажав Super + D, вы вновь откроете окна всех запущенных приложений.Run console

Кроме комбинации Super + D, вы также можете использовать сочетание клавиш Ctrl + Alt + D.

5. Super + A: показывает меню приложений

Вы можете открыть меню приложений в Ubuntu 18.10 GNOME, щелкнув по квадратику из 9 точек в левом нижнем углу экрана.

Однако более быстрый способ — использовать комбинацию клавиш Super + A.

Используйте клавишу Esc, чтобы выйти из меню приложений.

6. Super + Tab или Alt + Tab: переключение между запущенными приложениями

Если у вас запущено сразу несколько приложений, вы можете быстро и легко переключаться между ними, используя сочетания клавиш Super + Tab или Alt + Tab.

Удерживайте клавишу Super key и нажмите Tab — таким образом вы сможете выбирать между приложениями. Когда вы выберете нужное вам приложение, то просто отпустите клавиши Super и Tab — таким образом вы переключитесь в выбранное приложение.

По умолчанию переключатель приложений перемещается слева направо. Если вы хотите перемещаться справа налево, используйте комбинацию клавиш Super + Shift + Tab.

Кроме того, вы можете использовать клавишу Alt вместо Super key.

7. Super key + клавиши со стрелками

Откройте окно приложения, нажмите клавишу Super key и клавишу со стрелкой влево, и приложение перейдет к левому краю экрана, занимая половину экрана.

Точно так же нажмите клавиши Super key и стрелку вправо, и окно приложения переместится к правому краю.

Клавиши со стрелками Super и стрелочка вверх развернут окно приложения на весь экран, а Super и стрелка вниз вернут приложение к обычному размеру.

8. Super + M: панель уведомлений

В окружении GNOME есть панель уведомлений, где вы можете посмотреть уведомления о различных действиях системы и от разных приложений. Также здесь есть календарь.

С помощью комбинации клавиш Super + M вы сможете открыть панель уведомлений. Если вы нажмете эти клавиши еще раз, открытый лоток уведомлений будет закрыт.

Вы также можете использовать Super + V для переключения панели уведомлений.

9. Super+Space: Изменяет язык ввода

Если вы владеете несколькими языками, то наверняка в вашей системе установлено несколько различных раскладок клавиатур. Например у меня установлена русская и английская раскладки.

Если вы также используете несколько языков, вы можете быстро изменять язык ввода с помощью сочетания клавиш Super + Space.

10. Alt+F2: Запускает консоль

Данная команда предназначена для опытных пользователей. Если вы хотите быстро выполнить какую-либо команду, но не хотите открывать терминал и выполнять команду там, тогда вам нужно использовать Alt + F2 для запуска консоли.

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

11. Ctrl+Q: Закрывает окно приложения

Если у вас запущено приложение, вы можете закрыть его с помощью комбинации клавиш Ctrl+Q. Также для этой цели вы можете использовать Ctrl+W.

12. Ctrl+Alt+стрелки: Перемещение между рабочими столами

Если вы считаете себя опытным пользователем, то скорее всего вы используете несколько рабочих столов. Чтобы быстро переключаться между ними, вы можете использовать сочетание клавиш Ctrl + Alt + стрелка вверх, либо Ctrl + Alt + стрелка вниз.

13. Ctrl+Alt+Del: Выход из системы

Нет, в Linux сочетание клавиш Ctrl+Alt+Del не вызывает диспетчер задач. В системе с графическим окружением GNOME, с помощью клавиш Ctrl + Alt + Del вы можете вызвать меню с выключением системы, но Ubuntu не всегда следует нормам, поэтому иногда он может открывать меню с выходом из системы при нажатии Ctrl+Alt+Del.

Используйте пользовательские комбинации клавиш в Ubuntu

Вы должны знать, что комбинации клавиш не ограничиваются лишь теми, что установлены по умолчанию. Вы можете создавать собственные комбинации клавиш.

Перейдите в Настройки-> Устройства-> Клавиатура. Здесь вы увидите все комбинации клавиш, доступные в вашей системе. Прокрутите страницу вниз и вы увидите вкладку “Дополнительные комбинации”.

Как скопировать файл в Linux через терминал

При работе с Linux через терминал не редко приходится создавать копии файлов или копировать файлы из одной папки в другую. Например, это могут быть файлы конфигураций, которые используются для настройки программ, или просто документы пользователя. В данной инструкции мы расскажем, как скопировать файл в Linux через терминал и какие команды для этого потребуются. Статья будет актуальной для любого дистрибутива Linux, например, Ubuntu Linux или Debian

Команда для копирования «cp»

Для копирования файлов в Linux через терминал используется команда « cp » (от англ. «copy»). Команда « cp » представляет собой утилиту командной строки для копирования файлов и каталогов. Она поддерживает перемещение одного или нескольких файлов или папок с параметрами для создания резервных копий и сохранения атрибутов.

В общем случае, для того чтобы скопировать файл в Linux через терминал достаточно ввести команду « cp » и передать ей имя исходного и нового файла. Например, для того чтобы скопировать « file.txt » в новый « newfile.txt » нужно выполнить следующую команду:

Обратите внимание , по умолчанию команда « cp » всегда будет перезаписывать уже имеющиеся файлы копируемыми, но это поведение можно изменить с помощью опций, которые мы рассмотрим во второй части статьи.

копирование файла

Таким же образом выполняется копирование файла в другую папку. Вводим команду « cp », указываем путь к файлу и затем каталог, в который его нужно скопировать. Например, для того чтобы скопировать « file.txt » в каталог « folder » нужно выполнить вот такую команду:

копирование файла в папку

Естественно, если это необходимо, вы можете вводить полные пути к файлам и папкам, которые копируете командой « cp ». Например, копирование может выглядеть так:

копирование с указанием полного пути

Еще один пример копирования с указанием полного пути:

копирование с указанием полного пути

При необходимости можно скопировать сразу несколько файлов. В этом случае сначала нужно перечислить файлы, а потом указать папку, в которую их нужно скопировать. Например, для того чтобы скопировать « file.txt » и « newfile.txt » в каталог « folder » нужно выполнить следующее:

копирование нескольких файлов в папку

Аналогичное действие можно выполнить и с помощью маски. Например, для того чтобы скопировать все txt -документы в определенную директорию можно выполнить вот такую команду:

копирование файлов по маске

При копировании каталогов нужно добавлять параметр « -R », так как без этого « cp » будет выдавать ошибку. Поэтому, для копирования каталогов нужно ввести команду « cp -R » и указать исходный и новый каталог. Например, для того чтобы скопировать каталог « folder » в « newfolder » вам нужно выполнить вот такую команду:

копирование папок

Как и в случае с файлами, папки можно копировать сразу по несколько штук. Для этого нужно ввести «cp», перечислить копируемые папки и указать каталог назначения. Например, для того чтобы скопировать папки « folder » и « folder2 » в « newbigfolder » нужно выполнить следующее:

копирование нескольких папок

Синтаксис и опции команды «cp»

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

Самых опций у команды « cp » очень много, поэтому мы рассмотрим только самые простые и часто используемые. С остальными опциями вы сможете ознакомиться отдельно, выполнив в терминале Linux команду « man cp ».

Как уже было сказано, для выполнения команды копирования в терминале Linux сначала нужно ввести « cp », потом используемые опции, потом источник, и в конце место назначения. При этом опции из одной буквы можно соединять, например, вместо « -r -v » можно написать просто « -rv ».

рекурсивное копирование с выводом информации

Ниже мы рассмотрим несколько примеров копирования с опциями.

  • cp -r folder/ newfolder/
    Рекурсивное копирование каталогов.
  • cp -rv folder/ newfolder/
    Рекурсивное копирование с выводом подробной информации.
  • cp -ri folder/ newfolder/
    Рекурсивное копирование в интерактивном режиме с запросом на перезапись.
  • cp -rn folder/ newfolder/
    Рекурсивное копирование без перезаписи.
  • cp -ru folder/ newfolder/
    Рекурсивное копирование только новых файлов.
  • Как удалить папку в Linux через терминал (консоль)
  • Как открыть файл в терминале Linux
  • Как создать файл в Linux через терминал
  • Как удалить файл в Linux через терминал
  • Как подключиться по SSH из Windows 10

Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.

Задайте вопрос в комментариях под статьей или на странице «Задать вопрос» и вы обязательно получите ответ.

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

Файл или папку можно скопировать или переместить в другое место, перетаскивая их мышью, используя команды копирования и вставки, или с помощью комбинаций клавиш.

Например, можно скопировать презентацию на флэш-носитель, чтобы взять её с собой на работу, или сделать резервную копию документа перед внесением в него изменений (а затем использовать старую копию, если изменения не понравились).

Эти инструкции применимы как к файлам, так и к папкам. Копирование и перемещение файлов и папок выполняется одинаково.

Копирование и вставка файлов

Выберите файл, который хотите скопировать, нажав на него.

Right-click and select Copy , or press Ctrl + C .

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

Right-click and select Paste to finish copying the file, or press Ctrl + V . There will now be a copy of the file in the original folder and the other folder.

Перемещение файлов командами вырезания и вставки

Выберите файл, который хотите переместить, нажав на него.

Right-click and select Cut , or press Ctrl + X .

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

Right-click and and select Paste to finish moving the file, or press Ctrl + V . The file will be taken out of its original folder and moved to the other folder.

Копирование или перемещение файлов перетаскиванием

Откройте менеджер файлов и перейдите в папку, содержащую файл, который нужно скопировать.

Press the menu button in the top-right corner of the window and select New Window (or press Ctrl + N ) to open a second window. In the new window, navigate to the folder where you want to move or copy the file.

Нажмите на файл и перетащите его из одного окна в другое. Файл будет перемещён , если целевая папка находится на том же устройстве, и скопирован , если целевая папка находится на другом устройстве.

Например, при перетаскивании файла с USB-носителя в домашнюю папку он будет скопирован, так как вы перетаскиваете его с одного устройства на другое.

Для принудительного копирования файла удерживайте при его перетаскивании нажатой клавишу Ctrl , а для принудительного перемещения — клавишу Shift .

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

Команда cp в Linux

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

В этой статье мы рассмотрим что представляет из себя эта утилита, её синтаксис, основные опции, а также несколько примеров использования.

Синтаксис и опции cp в Linux

Утилита имеет два возможных варианта синтаксиса для копирования файлов: копирование файла в другой файл с указанным именем:

$ cp опции /путь/к/файлу/источнику /путь/к/файлу/назначения

И копирование файла с сохранением его имени в указанную папку:

$ cp опции /путь/к/файлу/источнику /путь/к/директории/назначения

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

Утилита имеет несколько интересных опций, которые могут сильно помочь при нестандартных задачах копирования, поэтому давайте их рассмотрим:

  • —attributes-only — не копировать содержимое файла, а только флаги доступа и владельца;
  • -b, —backup — создать резервную копию файла назначения если он существует;
  • —copy-contents — копировать содержимое для специальных файлов (сокеты, файлы устройств);
  • -f, —force — удалить файл назначения перед попыткой записи в него если он существует;
  • -i, —interactive — спрашивать, нужно ли перезаписывать существующие файлы;
  • -n, —no-clobber — не перезаписывать существующие файлы;
  • -P, —no-dereference — копировать сами символические ссылки, а не то на что они указывают;
  • -L, —dereference — копировать не символические ссылки, а то, на что они указывают;
  • -l, —link — создавать жесткие ссылки вместо копирования;
  • —preserve — переносить указанные атрибуты с файла источника в файл назначения, возможные значения: mode, ownership, time‐stamps, context, links, xattr, all;
  • —no-preserve — не переносить указанные атрибуты;
  • —parents — сохранять путь, указанный в файле источнике, в папке назначения;
  • -r, —recursive — копировать папку Linux рекурсивно;
  • —reflink — использовать Copy on Write если это поддерживается файловой системой;
  • -s, —symbolic-link — не выполнять копирование файлов в Linux, а создавать символические ссылки;
  • -S, —suffix — указать суффикс для резервных копий файлов;
  • —sparse — настройка работы с разреженными файлами;
  • -t, —target-directory — считать файл-назначения директорией и копировать файл-источник или директорию-источник в эту директорию с оригинальным именем;
  • -T, —no-target-directory — считать директорию назначения файлом или директорией для записи данных. Если в качестве источника выбран файл, то он будет скопирован с новым именем. Если директория, то её содержимое будет скопировано в директорию назначения;
  • -u, —upgrade — скопировать файл, только если он был изменён;
  • -x, —one-file-system — рекурсивное копирование не должно выходить за пределы этой файловой системы;
  • -v, —verbose — максимально подробный вывод.

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

  • -p — сохранять владельца, временные метки и флаги доступа при копировании, аналогично —preserve=mode,ownership,timestamps;
  • -d — копировать символические и жесткие ссылки именно как ссылки, аналогично —no-dereference —preserve=links;
  • -a — режим резервного копирования, при котором сохраняются все атрибуты, ссылки, а также выполняется резервное копирование папок, аналогично —recursive —preserve=all, —no-dereference;

Теперь, когда вы знаете основные опции, можно перейти к практике. Давайте рассмотрим основные примеры использования утилиты cp.

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

Для примеров из этой статьи я создам несколько файлов file1, file2, file3, одну символическую ссылку link1 на файл file1 и жесткую ссылку на файл file3. Затем папку source и в ней file4, file5, file6 и папку destination. Вот так можно создать ссылки:

ln -s $(realpath file1) link1 ln file3 hlink1

В результате получится такая структура:

1. Копирование файла в файл

Самый простой пример копирования файлов когда один файл копируется в другое место с заданным именем. Для этого надо указать имя файла в папке назначения. Например, для того чтобы скопировать файл file1 в папку destination с именем file10 нужно выполнить такую команду:

cp file1 destination/file10

Таким же способом можно создать копию файла в той же папке.

2. Копирования файла в папку

Если вам не нужно менять имя файла или надо скопировать несколько файлов, то можно просто указать папку, куда их копировать не указывая имя файла. Например, для того чтобы скопировать файл file1 в папку destination с тем же именем выполните:

cp file1 destination/

Причём в конце команды слеш ставить не обязательно. Утилита и так поймет что это папка.

3. Копирование папки в папку

Для копирования папок нужно использовать опцию -r (—recursive). Скопировать одну папку в другую довольно просто, если папка назначения существует. Для того чтобы скопировать папку source в папку destination выполните команду:

cp -r source destination

Или можно явно указать, что нужно именно скопировать source в destination с помощью опции -t:

cp -t file1 destination

Тогда, если папка destination не существует вы получите ошибку, вместо не очевидного поведения.

4. Копирование содержимого папки в папку

Для копирования содержимого одной директории в другую можно воспользоваться первым вариантом синтаксиса. Команда выглядит аналогичной предыдущему примеру, но она будет работать только если папки назначения не существует. Например, для того чтобы скопировать содержимое папки source в папку destination1 нужно использовать такую команду:

cp -r source destination1/

Если папка назначения существует, то в ней будет создана папка source. Для того чтобы избежать такого поведения можно использовать опцию -T:

cp -rT source destination/

Или же можно явно указать, что вас интересует именно копирование содержимого папки с помощью символа *. Например:

cp source/* destination

Однако в этом случае скрытые файлы, которые находятся в этой папке скопированы не будут. Копирование вложенных файлов и папок работает аналогичным образом.

5. Обработка существующих файлов

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

cp -i file1 destination

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

cp -n file1 destination

Кроме того, для существующих файлов можно делать резервную копию с помощью опции -b или —backup. Например, если использовать опцию -b, то в конце названия файла резервной копии будет добавлен символ тильды

cp -b file1 destination

При использовании опции —backup можно настроить имя резервной копии, Вот доступные варианты:

  • none — резервная копия не делается;
  • numbered — к имени файла будет добавляться номер;
  • simple — в конец файла будет добавлен знак

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

cp —backup=numbered file1 destination

Ещё один вариант обработки существующих файлов, который может быть полезен для больших файлов — заменять только если файл источник новее или файл в папке назначения не существует. Для этого нужно использовать опцию -u или —upgrade:

cp -u source/* destination

6. Копирование ссылок

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

cp -P link1 destination

Для жестких ссылок существует другой подход. Если вы хотите чтобы жесткая ссылка осталась ссылкой после копирования, нужно использовать опцию —preserve со значением links:

cp —preserve=links hlink1 destination

7. Сохранение атрибутов при копировании

По умолчанию cp обновляет временные метки и атрибуты прав доступа файлов при копировании. Но иногда может возникнуть необходимость сохранить оригинальные значения атрибутов. Для этого можно использовать опцию —preserve. Вот её возможные параметры:

  • mode — права доступа, сюда входит чтение, запись, выполнение и дополнительные флаги;
  • ownership — владелец и группа;
  • time‐stamps — временные метки, такие как дата обновления, дата создания и дата последнего доcтупа;
  • context — контекст SELinux;
  • links — сохранение жестких ссылок;
  • xattr — дополнительные атрибуты, которые настраиваются с помощью команды chattr;
  • all — всё выше перечисленное.

Если вы хотите оставить оригинального владельца и права доступа используйте опцию —preserve со значением mode,ownership или же опцию -p:

cp -p source/* destination

Если надо сохранить всю структуру файловой системы, в том числе символические и жесткие ссылки и временные метки, то можно использовать опцию -a:

cp -a source/* destination

8. Копирование и Copy-on-Write

Некоторые новые файловые системы, такие как Btrfs и ZFS поддерживают технологию Copy-on-Write. При её использовании, фактическое копирование данных из файла будет происходить только при его изменении. Эта функция работает в рамках одной файловой системы и сильно ускоряет копирование файлов. Но зато, их изменение может быть немного замедлено. По умолчанию cp использует Copy-on-Write только начиная с версии CoreUtils 9.0. но вы можете включить или отключить её вручную с помощью опции —reflink. Вот доступные значения:

  • always — всегда использовать, если не поддерживается будет выведена ошибка;
  • auto — использовать только если поддерживается;
  • never — никогда не использовать.

Например, для того чтобы включить обязательное использование CoW добавьте —reflink=always в команду копирования:

cp -reflink=always file3 destination

9. Обработка разреженных файлов

Разреженные файлы, это файлы которые содержат последовательности нулевых байт и в них эти последовательности заменены на их описание. Это актуально для образов дисков Qemu или VirtualBox, которые могут содержать много пустого места, которое не обязательно записывать на диск. По умолчанию, cp создает разреженные файлы только если файл источник разрежен. Однако можно настроить его таким образом, чтобы все файлы содержащие последовательности нулей делались разреженными. Настроить это поведение можно с помощью опции —sparse. Вот возможные значения:

  • auto — используется по умолчанию;
  • never — делать разреженные файлы не разрежеными;
  • always — делать файлы разреженными если они содержат достаточное количество нулевых байт.

В качестве примера можно создать образ на основе /dev/zero размером 20 мегабайт:

Если скопировать этот файл с опцией —sparse=always, то он станет разреженным и будет занимать значительно меньше места на диске:

cp —sparse=always ./image1 /destination

Выводы

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *